组织JQuery和其他插件的正确方法是什么?

问题描述:

我有一个使用jquery的HTML。让我们说在我给他们打电话。组织JQuery和其他插件的正确方法是什么?

<head> 
<script type="text/javascript" src="jquery.min.js"></script> 
<script type="text/javascript" src="jquery.jshowoff.min_130315_page.js"></script> 
</head> 
<body> 
    <script> </script> <!-- jquery.jshowoff plugin will be used below! --> 
    <div> </div> 
    <div> </div> 

    <!-- And an ads extension adds a link to jquery again. --> 
    <script type="text/javascript" src="jquery.min.js"></script> 

    <!-- scripts below will jquery.min.js --> 


</body> 

我的问题是。这会产生什么影响?

  1. 将再次调用jquery禁用插件(jquery.jshowoff)?
  2. 浏览器只能读取jquery.min而不能读取插件吗?

我希望这是清楚的,如果是这样,我可以更加清楚。 谢谢。

+3

你不需要包含jQuery两次。 – 2014-10-16 13:53:56

+0

@詹姆斯是的,我知道这不是必要的。但是我想知道它是否真的影响了jquery.showoff插件。通过测试它可以,但是解释是什么? – 2014-10-16 13:58:36

+1

正如原始问题所述:_ _在这种情况下没有达到OP。 – 2014-10-16 13:59:07

据我所知,第二个jQuery脚本将覆盖第一个,并且那里也加载了插件。如果将插件脚本标记移动到广告部分下方并删除第一个jQuery标记,那么该怎么办?那么只要确保你的代码等待jQuery ready事件?

+0

谢谢。我真的需要澄清,所以我可以向其他人解释。干杯。 – 2014-10-16 14:06:29

某些情况下的效果取决于脚本。在大多数情况下,仅仅导入一个库两次不会导致任何问题,但这是浪费。在其他情况下,如果脚本正在进行一些设置,那么导入它两次会产生以下效果,脚本的第二个实例将不执行第一个实例的所有工作。

在你的情况下,我想你无法控制'广告延伸',所以你可能必须控制脚本的顺序以防止冲突和矛盾的结果。

由于@Sanfor的状态拉这两个脚本将导致第二个覆盖另一个。不要忘记JS脚本是按顺序执行的。

您是否尝试将脚本放在底部或至少低于“广告附加信息”?

+1

上次我看了一下,第二个包括jQuery覆盖了第一个全局变量(window.jQuery和window。$),导致所有已加载的插件未定义? – 2014-10-16 14:00:29

+0

是的,你是对的。这取决于脚本正在做什么。这就是为什么我建议保持清洁。我会编辑我的答案以强调这一点。谢谢。 – 2014-10-16 14:02:40

+0

@sanfor我想我的猜测是对的。感谢您澄清,我目前无法控制广告附加信息。最有可能的是,由于广告总是处于最底层,所以我正在考虑在那里添加插件。 – 2014-10-16 14:03:22