如何使用Javascript或jQuery获得背景色?
我有一个如何使用Javascript或jQuery获得背景色?,javascript,jquery,css,colors,Javascript,Jquery,Css,Colors,我有一个iframe,如果背景是黑色,我想设置白色,反之亦然。我试图用以下方法获得背景色: $("#id").css('background') 及 及 但它们都是透明的 请帮助我。您需要查看iframe主体的背景,而不是元素本身的背景 var bgcolor = $(document.getElementById('iframeId').contentWindow.document.body).css('background-color'); (如果iframe内容来自与您不同的域,则不起
iframe
,如果背景是黑色,我想设置白色,反之亦然。我试图用以下方法获得背景色:
$("#id").css('background')
及
及
但它们都是透明的
请帮助我。您需要查看iframe主体的背景,而不是
元素本身的背景
var bgcolor = $(document.getElementById('iframeId').contentWindow.document.body).css('background-color');
(如果iframe内容来自与您不同的域,则不起作用)您需要查看iframe主体的背景,而不是
元素本身的背景
var bgcolor = $(document.getElementById('iframeId').contentWindow.document.body).css('background-color');
(如果iframe内容来自与您不同的域,则不起作用)我认为您可以与家长交谈,直到获得不透明的背景色:
var elm = $("#id")[0],
bg;
do {
bg = $(elm).css( "backgroundColor" );
elm = elm.parentNode;
} while( elm && bg.toLowerCase() === "transparent" );
console.log( bg );
我认为你可以走到父母面前,直到你得到一个不透明的背景色:
var elm = $("#id")[0],
bg;
do {
bg = $(elm).css( "backgroundColor" );
elm = elm.parentNode;
} while( elm && bg.toLowerCase() === "transparent" );
console.log( bg );
可能是
#id
的背景是透明的吗?如果它是透明的,那么如何获取父背景?我测试$(“#id”).css(“背景色”),并以rgb(255,0,0)格式返回颜色。我没有在任何地方设置背景色,只是设置了背景:#000000(或其他颜色)。是因为这个吗?可能是#id
的背景是透明的吗?如果它是透明的,那么我如何获得父背景呢?我测试$(“#id”).css(“背景色”))并以rgb(255,0,0)格式返回颜色。我没有在任何地方设置背景色,我只是设置了背景:#000000(或其他颜色)。是因为这个吗?未捕获引用错误:getElementById没有定义显然不是我最好的日子。修正了,是的。。。身体也是透明的。但是我的背景仍然是黑色。背景颜色可能来自iframe中的其他元素。试探性地确定哪一个元素提供了内容的背景色并不是一件小事。让我们来看看Uncaught ReferenceError:getElementById没有定义显然不是我最好的日子。修正了,是的。。。身体也是透明的。但是我的背景仍然是黑色。背景颜色可能来自iframe中的其他元素。试探性地确定哪一个元素提供了内容的背景色并不是一件小事