【问题标题】:set cookie if self.location.href!=top.location.href如果 self.location.href!=top.location.href 则设置 cookie
【发布时间】:2012-01-03 14:32:08
【问题描述】:

仅当网站位于 iframe 上时,我才需要设置 cookie,但由于某种原因,我无法实现。

<script type="text/javascript">
    if (self.location.href!=top.location.href) {
        document.cookie = "oniframe=yes;max-age=" + 60 * 60 * 24 * 30;
    } 
</script>

在 iframe 上(在其他网站上)浏览网站时,我找不到 cookie。

任何帮助将不胜感激。 谢谢丹尼尔

【问题讨论】:

  • 添加一些调试代码如alert(),看看你在if正文中的代码是否真的被执行了。
  • 既然您提到了iframe,您可能还想添加更长的解释,说明您的代码是否在 iframe 内部/外部运行,以及用于主文档和 iframe 的域名示例,因为这决定了浏览器中的大量安全策略。
  • 我看不出这将如何帮助解决问题。

标签: javascript cookies setcookie


【解决方案1】:

要检测您的网站是否在 iframe 中加载,您可以直接比较 selftop 对象,例如:

if (self === top)

    //Not loaded in iframe

else

    //Loaded in iframe

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-18
    • 2021-11-28
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 2011-12-13
    • 2018-08-31
    相关资源
    最近更新 更多