Uncaught TypeError:Object#<Object>没有方法'moveBoxes'

我试图使用我的asp.net mvc网站的moveBoxes插件,它不工作(显然)。 我在我的head标签中导入了像这样的site.master中的movingboxes.js

<script src="<%: Url.Content("~/Scripts/jquery.movingboxes.js")%>" type="text/javascript"></script> 

浏览器成功获取这个脚本。 现在我有一个常规的观点,从site.masterinheritance了这个jQuery的一点点,它调用了moveBoxes插件

 <script type="text/javascript"> $(document).ready(function () { $($('#slider-one')); $('#slider-one').movingBoxes({ startPanel: 1, panelWidth: .5, fixedHeight: false }); $('#slider-two').movingBoxes({ startPanel: 1, panelWidth: .5, fixedHeight: false }); }); </script> 

当我查看页面。 每一件事情都很好(包括其他的jQuery的东西),除了这个插件,我得到这个错误

在这里输入图像说明

这里是错误的描述 在这里输入图像说明

任何帮助,将不胜感激

编辑

所以显然我有这个:

  <script type="text/javascript" src="../../Scripts/jquery-1.4.1.js" /> <script src="<%: Url.Content("~/Scripts/jquery.movingboxes.js")%>" type="text/javascript"></script> 

现在通过将其更改为:

  <script type="text/javascript" src="../../Scripts/jquery-1.4.1.js"></script> <script src="<%: Url.Content("~/Scripts/jquery.movingboxes.js")%>" type="text/javascript"></script> 

有几件事你可以尝试得到这个工作。

  1. 绝对确保您的脚本被拉入页面,一种方法是使用Chromedebugging器中的“sources”选项卡并search文件。

  2. 在包含jQuery之后,确保你已经包含了脚本,因为它肯定是依赖于它的。

除此之外,我检查了API,而且我确实正确地做了所有事情。 祝你好运的朋友!

编辑:确保您closures您的脚本标记。 下面有一个答案指出这是解决scheme。

请记住, 只有less数元素可以自动closures ,大部分元素必须通过添加明确的结束标签来closures。 在上述情况下,第一个脚本标记没有正确closures,第二个脚本的结束脚本标记closures了脚本部分,导致只有第一个脚本被加载为外部脚本源,而忽略第二个脚本。

有关哪些标签可以自行closures的更多信息,请参阅W3C的HTML5草案(尽pipe定义在早期的HTML版本中没有区别):

http://www.w3.org/TR/html5/syntax.html#end-tags(8.1.2.1 ,第6点)

我只是与jQuery的响应幻灯片插件( http://responsive-slides.viljamis.com/ )相同的问题。

我修正了它没有使用jQuery的短版本$(".rslides").responsiveSlides(..而是长版本: jQuery(".rslides").responsiveSlides(...

所以切换$jQuery以免造成冲突或使用正确的jQuery没有冲突模式( http://api.jquery.com/jQuery.noConflict/

我有同样的问题。 我改变了头部的脚本的顺序,它为我工作。 插件需要的每个脚本 – 需要保持接近。

例如:

 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> <script type="text/javascript" src="http://cloud.github.com/downloads/malsup/cycle/jquery.cycle.all.latest.js"></script> <script type="text/javascript"> $(document).ready(function() { $('#slider').cycle({ fx: 'fade' }); }); </script> 

当我遇到这个问题时,是因为我试图用一个实际的函数来代替一个匿名函数。

不正确:

 $(document).on('change', "#MyId", MyFunction()); 

正确

 $(document).on('change', "#MyId", MyFunction); 

或者也是正确的,如果你需要传递事件对象或其他参数。

 $(document).on('change', "#MyId", function(e) { MyFunction(e); }); 

其实我认为你只下载了脚本的一部分。 尝试检查“核心”checkbox,然后下载整个脚本在jQuery网站。

我有同样的问题,我已经连接jQuery两次。 后来的版本覆盖了我的插件。

我刚刚删除了后来开始工作的jQuery。

我也有这样的问题,因为我使用IMG标签和UL标签。

尝试将“angular”插件应用于$('#mydiv').corner()$('#myspan').corner()$('#myp').corner() $('#img').corner() ! 此规则与将子DIV添加到指定元素以模拟圆angular效果有关。 因为我们知道IMG元素不能有任何子元素。

我已经解决了这个问题,通过在div中包装一个需要的元素,并将IMG改为带背景的DIV:CSS属性。

祝你好运!

确保使用正确版本的jQuery也是一个好主意。 我最近收购了一个使用jQuery 1.6.2的项目,这个项目与hoverIntent插件不兼容。 升级到最新的版本固定为我。

我发现我正在使用我的rendorTo div的select器来渲染我的专栏图。 显然它为你添加了select器,所以你只需要传递id。

renderTo:$('#myGraphDiv')为一个string'myGraphDiv',这个错误修正了这个错误,希望这也能帮助别人。