【问题标题】:how to detect external js file is already being included using jquery如何使用 jquery 检测外部 js 文件是否已包含在内
【发布时间】:2010-12-01 17:33:47
【问题描述】:

我已经使用 getScript 包含了外部 js 文件。但是,我只想包含一次。如何使用 jquery 检测外部文件是否已包含在内?谢谢。

【问题讨论】:

  • 即使你两次插入同一个文件,浏览器也会照顾你,它只会下载一次文件......
  • @gov 下载一次,会执行两次吗?
  • @gov 和 @orbling,是的,它确实执行了函数运行的次数。例如,如果我有 $(function(){ $('#btn').live('click', function(){alert('');) });如果 getscript 执行两次,则单击按钮时会弹出两次警告框。我希望它只出现一次..

标签: jquery getscript


【解决方案1】:

这在技术上并不检查文件本身是否已加载,但您可以检查该文件中定义的对象命名空间。

假设 JS 文件使用以下名称为其代码命名:

var myNameSpace = function(){
  return {
   some:'stuff'
  };
}();

或者任何命名空间的样式(即jQuery做同样的事情)然后你可以检查myNameSpace的存在

所以

if (typeof myNameSpace == "undefined"){ // load script }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-13
    相关资源
    最近更新 更多