以正确的方式添加JavaScript小部件代码

时间:2009-05-14 14:48:53

标签: javascript internet-explorer widget

我向客户提供javscript代码,将小部件添加到他们的网站。 目前我要求他们将此标记粘贴在</body>标记上方:

<script type="text/javascript">
var myHost = (("https:" == document.location.protocol) ? "https://" : "http://");
document.write(unescape("%3Cscript src='" + myHost + "www.mywebsite.com/mycode.js.php?u="+encodeURIComponent(window.location.host)+"' type='text/javascript'%3E%3C/script%3E"));
</script>

正如您所看到的,代码根据页面网址在http或https网址下调用我的脚本。

有时,如果网站html格式不正确,脚本可能会导致IE浏览器出现"operation aborted"错误。

我想向客户发送将附加到<head>区域的代码。

  1. 从头部调用代码时如何处理http / https?
  2. 您知道它是否能解决操作中止问题?

2 个答案:

答案 0 :(得分:2)

只需向他们提供HTTPS解决方案即可。

如果他们的网页是安全的,它会正常工作;如果没有,那么在不安全的页面中嵌入安全对象没有任何问题。

<script type="text/javascript" src="https://www.mywebsite.com/mycode.js.php"></script>

我可以看到你在查询字符串中传递了原始域名。您可以从JS代码中获取它,而无需通过GET参数传递它。您可以使用document.referrer属性进行检查。

答案 1 :(得分:2)

看起来谷歌以完全相同的方式处理他们的分析代码(我相信你知道)。你在代码中做了什么?当我查看您提供的“操作中止”链接时,它表示在页面加载时执行代码的解决方案。

我建议将函数绑定到onload事件并在那里执行DOM操作代码。