我有一个iframe
,如果背景为黑色,我想设置颜色为白色,反之亦然。我试图通过以下方式获得背景颜色:
$("#id").css('background')
和
$("#id").css('background-color')
和
$("#id").css('backgroundColor')
但它们都是透明的。
请帮帮我。
答案 0 :(得分:2)
您需要查看iframe正文的背景,而不是<iframe>
元素本身的背景。
var bgcolor = $(document.getElementById('iframeId').contentWindow.document.body).css('background-color');
(如果iframe内容来自与您不同的域,则无效)
答案 1 :(得分:1)
我认为你可以走过父母,直到你得到一个不透明的背景颜色:
var elm = $("#id")[0],
bg;
do {
bg = $(elm).css( "backgroundColor" );
elm = elm.parentNode;
} while( elm && bg.toLowerCase() === "transparent" );
console.log( bg );