[英]Can't initialize plugin (isotope) when using jQuery.getScript
所以我创建了一个在客户端页面上加载HTML的应用程序,我需要通过javascript加载一些脚本并对HTML进行操作。 特别是我需要使用JS来获取同位素javascript文件,然后在我们刚创建的HTML上初始化它。
另请注意,我在noConflict模式下运行jQuery,因此脚本不会在客户端站点上导致错误。 在测试中,如果我在HTML中对<script>标记进行硬编码,我的代码工作正常,但这在最终产品上是不可行的。 我需要通过JS获取外部脚本,因为它是动态的。 问题是我收到以下错误:
“未捕获的TypeError:undefined不是函数”
<script src="http://code.jquery.com/jquery-1.11.2.min.js" type="text/javascript"></script>
<style type="text/css">
div.item {width:200px; height:200px; background:#039; margin:10px;}
</style>
<div id="container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
<script type="text/javascript">
$( document ).ready(function() {
ch_jquery = jQuery.noConflict(true);
ch_jquery.getScript('http://isotope.metafizzy.co/isotope.pkgd.min.js', function(){
$('#container').isotope();
});
});
</script>
任何建议赞赏!
对于初学者,您没有在jsfiddle示例中包含jQuery库。 然后你应该在$(document).ready()
函数之外定义jQuery.noConflict
。 这是一个有效的例子 。
var ch_jquery = jQuery.noConflict(true);
$( document ).ready(function() {
ch_jquery.getScript('http://isotope.metafizzy.co/isotope.pkgd.min.js', function(){
$('#container').isotope();
});
});
编辑另一个noconflict的例子就是这个
var ch_jquery = jQuery.noConflict();
ch_jquery( document ).ready(function() {
ch_jquery.getScript('http://isotope.metafizzy.co/isotope.pkgd.min.js', function(){
ch_jquery('#container').isotope();
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.