Javascript 在iframe中检测,然后隐藏元素

Javascript 在iframe中检测,然后隐藏元素,javascript,css,iframe,elements,Javascript,Css,Iframe,Elements,我希望你们中一些比我更擅长编码的人能帮上忙 我有一个简单的网页(www.mypage.com)。它有5个链接 链接1(www.mypage.com/link1.html) 链接2(www.mypage.com/link2.html) 链接3(www.mypage.com/link3.html) 链接4(www.mypage.com/link4.html) 链接5(www.mypage.com/link5.html) 现在,在主主页上,单击链接打开一个弹出窗口,使用iframe显示他们单击的页面

我希望你们中一些比我更擅长编码的人能帮上忙

我有一个简单的网页(www.mypage.com)。它有5个链接

链接1(www.mypage.com/link1.html) 链接2(www.mypage.com/link2.html) 链接3(www.mypage.com/link3.html) 链接4(www.mypage.com/link4.html) 链接5(www.mypage.com/link5.html)

现在,在主主页上,单击链接打开一个弹出窗口,使用iframe显示他们单击的页面

现在我想做的是,当人们通过主页点击链接,从而得到一个弹出窗口/iframe,在该页面上,例如(www.mypage.com/link1.html),我想隐藏一些元素。元素是链接菜单和横幅

现在,如果一个人手动输入其中一个链接,例如直接在浏览器中键入www.mypage.com/link1.html,那么我希望显示横幅和横幅

还有什么我可以做的吗? 是否有一些javascript可以运行,如果它检测到它是一个可以显示的iframe:在我想要隐藏的元素上没有


非常感谢。

我会这样做: 在链接页面(www.mypage.com/link1.html)中,我会有一个脚本来验证url的散列是否有某个值;否则,请正常显示横幅。 因此,在iframe中打开页面时,请确保将src设置为“www.mypage.com/link1.html#banner_off”,而不是简单的“www.mypage.com/link1.html”。
这样,当用户在浏览器中键入链接地址(不带哈希值)时,将显示您的广告。 以下是链接页面中脚本的外观示例:

function manageBanners(){
    if(document.location.hash == "banner_off")//hide banners
        {
            //code to hide banners here
            var banners = document.getElementsByClassName('banner');
            for(var i in banners)
                banners[i].style.display = 'none';
        }
    //else do not alter the banners visibility
}
window.onload = manageBanners;
当然,您也可以使用类似sintax:url?banner=false的php查询,并检查url中的参数。

希望这有帮助

我能想到的检测iFrame中页面的最佳方法是将页面的URL与浏览器窗口中的URL进行比较。如果它们不一样,它一定在一个框架内

if (top.location != location) {
    // hide menu and banner
}

iframe JS是生成的还是硬编码的?天哪,这是个很棒的主意。非常感谢。谢谢,我也来试试。非常感谢你