如果我的网站在 iframe 中,我不希望标题显示在任何页面中

Posted

技术标签:

【中文标题】如果我的网站在 iframe 中,我不希望标题显示在任何页面中【英文标题】:if my site is in an iframe I don't want the header to show in any pages 【发布时间】:2015-03-21 15:39:15 【问题描述】:

我正在尝试在以下位置找到的解决方案:Hide header if in iframe 当 iframe 被加载时它确实有效,但是如果我点击我网站上的任何链接,标题就会出现,如果标题在 iframe 中,我不希望标题显示在任何页面中。

现在我的代码是

function no_header_iframe() ?>
<script type="text/javascript">
    function inIframe () 
    try 
        return window.self !== window.top;
     catch (e) 
        return true;
    


if(inIframe())
    $('nav').addClass('hidden').hide();

</script>
<?php  
add_action('wp_footer', 'no_header_iframe');

因为我的网站在 wordpress 中。

如何隐藏所有页面的标题? (当然,如果网站是在 iframe 中加载的)

【问题讨论】:

如何在您希望设置此标题隐藏效果的每个页面中加载相同的 js 代码?编辑:如果您有一个母版页,您可以将代码放在您的母版页中,以便将其加载到使用该母版页的所有页面上 @Ji_in_coding 我把它放在我所有页面的页脚中,当我将操作添加到 wp_footer 时,它会将它添加到每个页面中加载的 footer.php 存档中:/ 尝试注释掉您的 iframe 检测,只需关闭标头即可,无论 iframe 或浏览器如何。在浏览器中访问几个页面以确保其正常工作。然后再次在 iframe 中测试。也许这可以帮助您缩小原因。 @Ji_in_coding 谢谢!刚刚发现 jquery 没有加载到其他页面中,这就是代码不起作用的原因:) 【参考方案1】:

正如 Ji_in_coding 所说,您需要在每个页面上包含(并运行)该 javascript 代码。

如果您有一个 index.php 页面,该页面对您的所有网站内容都使用了 include,您可以在其中包含代码。 如果没有,您需要在每个页面上都包含它。

【讨论】:

以上是关于如果我的网站在 iframe 中,我不希望标题显示在任何页面中的主要内容,如果未能解决你的问题,请参考以下文章

Drupal - Lightbox -> iframe 节点显示整个网站的视图

框架破坏,但如果是我的话

仅在特定域上加载 iframe

如何使 iframe 静音?

在 iFrame 之外打开特定链接

Wordpress:仅在点击时加载 iframe