我有一个iframe(相同的域),我隐藏了一些我不想从这个iframe显示的元素。一切正常,但是当我单击ul> li列表并选择该列表中的一个项目时,隐藏的元素会再次显示出来。
iframe不改变隐藏的ID ítems或类似的东西,所以我不知道为什么隐藏的ítems再次显示。
我现在的解决方案是一个setInterval,保持ítems隐藏,但它崩溃的页面几分钟后,在页面不活动,所以我需要另一个解决方案。
我尝试了一些东西,比如检测iframe内部的单击函数,但是当我选择列表中的一个项目时,这个函数不起作用。
$(function(){
var f=$('#iframe')
f.load(function(){
f.contents().find("#____bl_k_dd").on('click', function(event) {
runAfterTimeout();
});
});
});
function runAfterTimeout() {
setTimeout(function(){
alert("hi its me");
$('#iframe').contents().find('body').css("background", "green");
},2000);
};
我尝试检测元素上的点击功能,它第一次工作,然后它不工作。
如果我把元素的ID改为body,它只是有时工作,所以它不是一个解决方案
您可以创建一个css文件并将其添加到您的iframe页面
var $head = $("iframe").contents().find("head");
$head.append($("<link/>",
{ rel: "stylesheet", href: "file://path/to/style.css", type: "text/css" }));