Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.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 如果它们有父类,则隐藏类_Javascript_Jquery_Html_Css_Sharepoint 2013 - Fatal编程技术网

Javascript 如果它们有父类,则隐藏类

Javascript 如果它们有父类,则隐藏类,javascript,jquery,html,css,sharepoint-2013,Javascript,Jquery,Html,Css,Sharepoint 2013,SharePoint 2013对弹出窗口使用iFrame,这在使用修改后的母版页时会导致问题。iframe有一个.ms dlgFrame类,我试图隐藏的元素是.navbar。我试过用CSS和 .ms-dlgFrame .navbar { display: none; } 但它没有起作用。使用javascipt,我可以判断iframe类是否存在,但是当我试图隐藏导航栏时,它会在主页面而不是弹出窗口上隐藏导航栏。我使用的javascript是 if (document.getElementsB

SharePoint 2013对弹出窗口使用iFrame,这在使用修改后的母版页时会导致问题。iframe有一个.ms dlgFrame类,我试图隐藏的元素是.navbar。我试过用CSS和

.ms-dlgFrame .navbar {
  display: none;
}
但它没有起作用。使用javascipt,我可以判断iframe类是否存在,但是当我试图隐藏导航栏时,它会在主页面而不是弹出窗口上隐藏导航栏。我使用的javascript是

if (document.getElementsByClassName('ms-dlgFrame').length) {
    document.getElementsByClassName('navbar')[0].style.Display='none';
}
如何隐藏弹出窗口上的导航栏而不是主页


iframe是一个单独的文档,因此iframe内容不能被视为CSS的子元素。您需要直接处理iframe内容

谈论如何做到这一点。只需给iframe一个ID,jQuery选择器就可以工作了

$("#iFrame").contents().find("#someDiv").removeClass("hidden");

不能从iframe外部影响iframe内部的元素。这就是使用iframe的原因之一:它与所属上下文完全隔离。如果iframe与父文档位于同一个域中,则这不是100%正确的。您需要通过document.frames访问iframe内容,因为它是一个单独的文档。我已经添加了我正在处理的部分源代码的图片@Diodeus所有这些都在同一个域中,并且实际上已内置到sharepoint中。谢谢!工作完美