仅为特定域加载JavaScript?

时间:2014-08-11 15:39:56

标签: javascript

我希望javascript只在我指定的域上加载,而如果它被另一个域加载,页面将被定向到我指定的域。

例如,我在域mydomain.com中有一个页面,其中有一些javascript,然后有人从我的页面复制该javascript并将其加载到hisdomain.com。因为我已将脚本设置为仅在域mydomain.com中起作用,所以该脚本在hisdomain.com中不起作用。此外,如果将hisdomain.com重定向到mydomain.com,那会更好。

我想使用这种方法来避免那些不负责任的人盗窃和克隆脚本。

谢谢!

2 个答案:

答案 0 :(得分:2)

  

我希望javascript只在我指定的域上加载,而如果它被另一个域加载,页面将被定向到我指定的域。

这应该这样做:

if (location.host != "your.domain") location.href = "http://your.domain";
  

我想使用这种方法来避免那些不负责任的人盗窃和克隆脚本。

该行只会有助于防止其他域包含your.domain/script.js(并窃取您的带宽)。当脚本实际上是复制(而不是从您的服务器提供)时,删除这样的行是微不足道的。保护是不可能的。而是看看How can I obfuscate (protect) JavaScript?

答案 1 :(得分:0)

这将有助于

if (location.host == "yourwebsite.com") {

// put your script function here
}
else {
location.href = "http://yourwebsite.com"; 
}