两次引用同一个js文件是否有任何不良影响?
Is there any ill effects of referencing the same js file twice?
我读过为什么有人(比如Google)做jQuery和其他js文件的托管是一件好事的原因。但是,我有一个客户端有像googlecode.com和googleapis.com这样的域名被封锁(一个政府机构)。
我想保留谷歌托管的js文件,但也有一个本地副本在我的服务器上为上述客户端(这只是我的客户端的一小部分,但一个重要的)。
在同一页面中引用相同的js文件会导致任何问题吗?
这基本上是我的源代码的样子,1列在另一个后面:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="/js/local/jquery.min.js"></script>
当您使用<script>
元素在页面中包含脚本时,您不会"引用"它:您执行它。
所以这完全取决于脚本。
例如,jQuery不会中断太多,第二次执行将简单地替换window.jquery
和window.$
的第一个值,这只会花费一些(少量)额外的时间。
其他脚本可能没有准备好重复执行。
一般来说,我认为你们应该努力避免这种重复。这是不干净的,它减慢了页面。如果不能简单地使用自己的jQuery副本,我建议部署两个版本的应用程序。使用HTML5 Boilerplate流行的模式是最有效的方法。只有当无法访问到来自Google的文件时,它才会加载本地文件。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.8.3.min.js"><'/script>')</script>
相关文章:
- jQuery中是否内置了任何字符串格式化函数
- 是否有任何snippet或jQuery插件可以列出easylist.txt模式匹配的DOM中的所有元素
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- Graphiti中是否有任何工具提示功能
- PhantomJS - 检查javascript函数是否正在运行的任何方法
- 是否有任何JavaScript UI组件可以显示字符串之间的差异
- 是否有任何可能的原因使我应该指定类型=“”;按钮“;用于我的按钮元素
- 是否有任何设置阻止JavaScript在系统上工作
- 是否有任何Javascript函数从指定的索引中进行正则表达式匹配
- 使用jQuery 1.8.1准备好多个$(document).是否有任何开销
- 如何查明鼠标按下事件是否发生在滚动条上或元素中的其他任何位置
- javascript测试是否存在两个标志中的任何一个
- 是否有任何开源web应用程序具有良好的QUnit(或JSUnit)测试用例
- 使用jQuery.css()方法时,是否需要转义任何字符
- 是否有任何内置方法可以更改JavaScript对象'的属性设置为某个值
- 在jquery中是否有任何方法或位置可以编写从Dom中删除页面后调用的方法
- 递归Javascript对象是否会导致任何问题(内存泄漏)
- 是否有任何理由不在不同的源文件中提供相同的模块
- 除了用于跟踪的IP地址之外,是否有任何计算机特定信息
- 是否有任何不需要后端的验证码角度指令