脚本不工作。以前工作过

时间:2014-04-12 08:50:19

标签: javascript html

我不太了解js,但我创建了一个简单的脚本,只允许从某个页面访问页面,这里是代码:

<script language="javascript" type="text/javascript">
if (document.referrer == "example111/index.html")
{
window.history.go(0);
}
else
{
window.location = "index.html";
}
</script>

现在问题在于我首先在虚拟网站上尝试过它,但是现在我把它移植到另一个网站,它不起作用,它只是重定向到“index.html”;即使从页面上查看我希望它可以使用,如果直接访问,它的问题是什么?

2 个答案:

答案 0 :(得分:0)

语法

string = document.referrer; 

注释

如果用户直接导航到页面(不是通过链接,而是通过书签),则该值为空字符串。由于此属性仅返回一个字符串,因此它不会为您提供对引用页面的DOM访问权限。

  

尝试这是有效的

<script type="text/javascript" charset="utf-8">
if (document.referrer.indexOf('index.html') == -1) {
alert("Access Violation");
top.location="http://www.yahoo.com";
}
</script>

答案 1 :(得分:0)

确保将referrer与正确的字符串进行比较(部分匹配不够),然后尝试:

if (document.referrer !== "example111/index.html") {
    window.location.href = "index.html";
}

window.history.go(0)重新加载您的网页,这会更改document.referrer的值。然后在刷新时,else完成它的工作。