Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未捕获类型错误:对象#<;HTMLBodyElement>;没有方法';css';_Javascript_Jquery - Fatal编程技术网

Javascript 未捕获类型错误:对象#<;HTMLBodyElement>;没有方法';css';

Javascript 未捕获类型错误:对象#<;HTMLBodyElement>;没有方法';css';,javascript,jquery,Javascript,Jquery,我希望最终遍历body中的所有节点(尚未实现),并从每个节点获取背景和文本颜色。但是,我得到了未捕获的TypeError:Object没有方法“css”。它发生在var bg=node.css(“背景色”) 这是我的密码 function grabColors() { var colorArray = new Array(); var body = $("body"); console.log(body); body.each(function(index,

我希望最终遍历body中的所有节点(尚未实现),并从每个节点获取背景和文本颜色。但是,我得到了
未捕获的TypeError:Object没有方法“css”
。它发生在
var bg=node.css(“背景色”)

这是我的密码

function grabColors() {
    var colorArray = new Array();
    var body = $("body");

    console.log(body);

    body.each(function(index, node){
        console.log(node);
        getColorsFromChild(node);
    });
    console.log(colorArray);
}

function getColorsFromChild(node) {
    var bg = node.css("background-color");
    var bg2 = node.css("background");
    var color = node.css("color");

    if ($.inArray(bg, colorArray) == -1) {
        colorArray.push(bg);
    }
    if ($.inArray(bg2, colorArray) == -1) {
        colorArray.push(bg2);
    }
    if ($.inArray(color, colorArray) == -1) {
        colorArray.push(color);
    }
}
grabColors();

您正试图在
each
给定的DOM对象上调用jQuery函数css。必须将DOM对象转换为jQuery对象,才能在其上调用CSS相关函数

改变

var bg = node.css("background-color");
var bg = $(node).css("background-color");