我正在从事的一个项目需要在客户的网页上使用 jQuery。客户将插入我们将提供的一段代码,其中包括一些<script>
在 a 中构建小部件的元素<script>
-创建的<iframe>
。如果他们还没有使用最新版本的 jQuery,这也将包括(很可能)<script>
适用于 Google 托管版本的 jQuery。
问题是某些客户可能已经安装了旧版本的 jQuery。虽然如果它至少是相当新的版本,这可能会起作用,但我们的代码确实依赖于 jQuery 库中最近引入的一些功能,因此肯定会出现客户的 jQuery 版本太旧的情况。我们不能要求他们升级到最新版本的 jQuery。
有什么方法可以加载较新版本的 jQuery 以便仅在我们的代码上下文中使用,而不会干扰或影响客户页面上的任何代码?理想情况下,也许我们可以检查 jQuery 是否存在,检测版本,如果它太旧,则以某种方式加载最新版本以供我们的代码使用。
我有一个想法,在一个<iframe>
在客户的领域,也包括我们的<script>
,这似乎是可行的,但我希望有一种更优雅的方法来做到这一点(更不用说没有额外的性能和复杂性损失<iframe>
s).
是的,由于 jQuery 的无冲突模式,这是可行的。http://blog.nemikor.com/2009/10/03/using-multiple-versions-of-jquery/ http://blog.nemikor.com/2009/10/03/using-multiple-versions-of-jquery/
<!-- load jQuery 1.1.3 -->
<script type="text/javascript" src="http://example.com/jquery-1.1.3.js"></script>
<script type="text/javascript">
var jQuery_1_1_3 = $.noConflict(true);
</script>
<!-- load jQuery 1.3.2 -->
<script type="text/javascript" src="http://example.com/jquery-1.3.2.js"></script>
<script type="text/javascript">
var jQuery_1_3_2 = $.noConflict(true);
</script>
然后,代替$('#selector').function();
,你会做jQuery_1_3_2('#selector').function();
or jQuery_1_1_3('#selector').function();
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)