When jQuery is loaded twice, any scripts that are loaded between the two copies get associated with the first copy of jQuery (ref):
<script src="jquery-copy1.js"></script>
<script src="myPluginExtendedFromJQ1.js"></script>
<script src="jquery-copy2.js"></script>
<script src="myPluginExtendedFromJQ2.js"></script>
<script>
// all of the jQuery's below are associated with jquery-copy2
jQuery(function(){
// no problems
jQuery('#demo-x').myPluginExtendedFromJQ2();
// error: myPluginAttachedTOJQ1 is undefined
jQuery('#demo-y').myPluginExtendedFromJQ1();
});
</script>
So once the document ready function is called, the jQuery
calls inside refer to the second copy of jQuery that was loaded.
If this situation is unavoidable, then you'll need to define a variable associated with the first copy:
<script src="jquery-copy1.js"></script>
<script>var $jq1 = jQuery.noConflict();</script>
<script src="myPluginExtendedFromJQ1.js"></script>
<script src="jquery-copy2.js"></script>
<script src="myPluginExtendedFromJQ2.js"></script>
<!-- other stuff -->
<script>
// lets call plugins attached to the first copy of jQuery
// document ready can be called on either version $(function(){ ... })
jQuery(function(){
// no problems
jQuery('#demo-x').myPluginExtendedFromJQ2();
// target first copy of jQuery
$jq1('#demo-y').myPluginAttachedToJQ1();
});
</script>
Please refer to this jQuery forum post for more details.
In addition, I would report this issue to your web host, as they should be checking to see if jQuery already exists before loading it.
etc
doesn't help. Are you sure that jQuery and the plugin are loading? Is there aDOCTYPE
specified? Are you loading any other libraries like prototype? Is jQuery being loaded more than once? – Anchises