未捕获的TypeError:对象#<Object>没有方法'movingBoxes'

Col*_*nor 36 javascript jquery typeerror

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

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

并且浏览器成功获取此脚本.现在我有一个继承自site.master的常规视图,其中有一些jquery,它调用了movingBoxes插件

<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>
Run Code Online (Sandbox Code Playgroud)

当我查看页面时.除了这个插件,每件事都运行正常(包括其他jquery的东西),我得到这个错误

在此输入图像描述

这是错误的描述 在此输入图像描述

任何帮助,将不胜感激

编辑

显然我有这个:

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

它现在通过将其更改为:

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

Hac*_*tly 40

有一些事情你可以尝试让这个工作.

  1. 绝对确保您的脚本被拉入页面,检查的一种方法是使用Chrome调试器中的"来源"标签并搜索该文件.

  2. 确保在包含jQuery之后已经包含了脚本,因为它肯定取决于它.

除此之外,我检查了API,你肯定做的一切都是我能看到的.祝你好运!

编辑:确保关闭脚本标记.下面的答案指出了解决方案.

  • 我还要说:确保你不小心多次包含jQuery,否则第二次导入可能会删除已经导入的插件. (9认同)
  • thx很多男人....我正在寻找这么长时间...最后结果是javascript文件的排序...再次thx (3认同)

Sas*_*M78 14

请记住,只有少数元素可以自动关闭,大多数其他元素必须通过添加显式结束标记来关闭.在上面的情况中,第一个脚本标记未正确关闭,第二个脚本的结束脚本标记随后关闭了脚本部分,导致仅将第一个脚本作为外部脚本源加载并忽略第二个脚本.

有关哪些标签可以自动关闭的更多信息,请查看HTML5的W3C草稿(尽管早期HTML版本中的定义没有区别):

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