ggu*_*erg 11 css iframe jquery
我在这里读了十几个类似的问题并尝试了我能想到的一切,但我显然做错了,因为我无法让它发挥作用.
HTML:
<iframe name="posts" id="posts" src="edit.php">
Run Code Online (Sandbox Code Playgroud)
JS:
$(document).ready(function() {
$('iframe#posts').ready(function() {
var frame = $('iframe#posts').contentDocument;
console.log($('#adminmenu', frame));
$('#adminmenu', frame).css('display', 'none !important');
});
});
Run Code Online (Sandbox Code Playgroud)
控制台正在输出:
[<ul id=?"adminmenu" style=?"display:? none !important;? ">?…?</ul>?]
Run Code Online (Sandbox Code Playgroud)
这是正确的元素.但是,display:none它永远不会在浏览器中应用.此外,我发现奇怪的是控制台正在输出内联样式,即使它是在console.log()语句之后设置的(不确定是否相关,但似乎不应该).
有谁知道为什么这不起作用?
我还应该补充一点<ul id="adminmenu">,主文档中也有一个,但我想通过提供iframe上下文,它应该以iframe为目标.
小智 21
您是否尝试过使用jQuery的contents()功能而不是contentDocument?
$("iframe#posts").contents().find("#adminmenu").hide();
Run Code Online (Sandbox Code Playgroud)
更新:改为.css("display", "none !important")简单.hide().