未捕获的TypeError:对象[object Object]没有方法'bxSlider'

时间:2013-10-07 18:13:21

标签: javascript jquery jquery-plugins

我在控制台中收到此错误。

未捕获的TypeError:对象[object Object]没有方法'bxSlider'

我不知道为什么会发生这种情况。我把所有这些都完美地工作了但是当我把它放到NetSuite商店时它停止工作。

这是在NoConflict中运行jQuery我不需要在插件中将所有“$”更改为jQuery吗?

这是我调用jQuery,插件和脚本的地方。

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">jQuery.noConflict();</script>
<script type="text/javascript" src="/site/js/modernizr.custom.93936.js"></script>
<script src="/site/js/jquery.bxslider.js"></script>
<script>
jQuery(document).ready(function(){
  jQuery('.bxslider').bxSlider({
  auto: true,
  controls: false   
});

});
</script>

这是整个控制台错误。

未捕获的TypeError:对象[object Object]没有方法'bxSlider'dtv:57 (匿名函数)dtv:57 n jquery.min.js:2 o.fireWith jquery.min.js:2 e.extend.ready jquery.min.js:2 c.addEventListener.B

这里可能是什么原因我迷失了,一直在尝试我所知道的每件小事,没有什么能使它发挥作用。

5 个答案:

答案 0 :(得分:1)

可能是因为jquery冲突。 请重新检查您的代码,可能是您添加了两次jquery。或者更改最新的jquery。

答案 1 :(得分:0)

可能是因为jquery冲突而且检查你的代码(对于使用你最喜欢的浏览器的控制台或开发人员工具的instace)来加载jquery两次是一个很好的建议。

您还应检查是否正在控制台中加载bxSlider的js文件,因为路径中可能存在拼写错误。

可能导致此问题的另一个原因是脚本的加载顺序。如果在jquery之前加载bxSlider,它将给出此错误。您可以通过查看页面的源代码或查看开发人员工具中的“网络”选项卡来查看此内容。

答案 2 :(得分:0)

我找到了

jQuery(document).ready(function(){
  jQuery('.bxslider').bxSlider({
  auto: true,
  controls: false   
});

})

在一个文件(settings.js中,在检测错误的位置方面也更有效率,而且显然更容易被WordPress使用。

答案 3 :(得分:0)

如果你没有掠过资产,这也是一个问题。

rake assets:clean && rake assets:precompile

答案 4 :(得分:0)

我在声明函数时省略了大括号()时得到了这个。

代码不正确:

var calcResults = (function () {
.....
});

正确的代码:

var calcResults = (function () {
.....
})();   //<<--  these () were missing