jQuery UI - Sortable不会被解雇?

时间:2010-05-17 14:32:11

标签: javascript jquery jquery-ui

我正在尝试使用jQuery UI可排序插件,我创建了一个如下所示的列表:

<ul id="sortable">
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
    <li>Item 4</li>
    <li>Item 5</li>
</ul>

我已经包含了插件脚本文件:

$(function() {
    $("#sortable").sortable();
    alert('test');
    $("#sortable").disableSelection();
});

所以我只是尝试在运行.sortable之前放置警报框并显示警告框。但把它放在.sortable之后是行不通的。这意味着.sortable失败了吗?

我已经包含了脚本并将它们放在html文档的头部。

<script type="text/javascript" src="js/jquery.ui.core.min.js"></script>
<script type="text/javascript" src="js/jquery.ui.mouse.min.js"></script>
<script type="text/javascript" src="js/jquery.ui.sortable.min.js"></script>
<script type="text/javascript" src="js/jquery.ui.widget.min.js"></script> 

哪个是对的?实际运行.sortable的函数与所有其他js片段和插件一起在合并的js文件中。

2 个答案:

答案 0 :(得分:1)

编辑:刚检查了你的依赖项和内部JQuery UI依赖项都没问题,但是我没有看到对JQuery本身的引用......你在主页面中有这个吗?

<script type="text/javascript" src="/js/jquery-1.4.2.min.js"></script>

我没有看到您提供的代码有问题但是您对脚本的引用引用了您的页面所在的文件夹的子文件夹...如果您的结构是这样的话,这很好。

假设js文件夹不在root下,请尝试相对于根文件夹进行引用,如下所示:

<script type="text/javascript" src="/js/jquery.ui.widget.min.js"></script>

答案 1 :(得分:1)

确保以正确的顺序包含正确的文件,更简单的方法是直接从jQuery UI下载完整或部分的,无论您需要什么,包:http://jqueryui.com/download

下载时,您将获得一个缩小的js文件(jquery-ui-1.8.1.custom.min与当前版本),而不是单个脚本。如果您正确设置了缓存标头,则客户端会缓存一次。


或者,直接从CDN包含脚本,例如here's google's copy

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/jquery-ui.min.js"></script>

这样做可以为各种小部件节省很多依赖性问题。另请注意,如果您使用的是默认主题see this question for a list,Google也会托管这些主题,并更新1.7.2到您的版本的链接,例如在回答时1.8.1