我是jQuery的新手,有人可以解释这段代码的作用:
$(document).ready(function() {
var order = null;
$("#order-list").load(location.href+" #order-list>*","");
$("#order-list").sortable({
handle : '.handle',
update : function (e, ui) {
order = $(this).sortable('serialize');
$("#info").load("process-sortable.php?"+order);
}
});
});
答案 0 :(得分:4)
Straight from the API docs,“加载页面碎片”:
“与$ .get()不同,.load()方法允许我们指定要插入的远程文档的一部分。这是通过url参数的特殊语法实现的。如果一个或者字符串中包含更多空格字符,第一个空格后面的字符串部分被假定为jQuery选择器,用于确定要加载的内容。
我们可以修改上面的示例以仅获取文档的一部分:
$('#result').load('ajax/test.html #container');
当此方法执行时,它会检索ajax / test.html的内容,但随后jQuery会解析返回的文档以查找ID为container的元素。此元素及其内容将插入到具有结果ID的元素中,并且将丢弃检索到的文档的其余部分。“
答案 1 :(得分:0)
load
表示“将匹配集中的任何内容(在本例中为id order-list
的元素)替换为我传递的URI中返回的任何HTML。”
sortable
是一个插件,不是jQuery本身的一部分。传递的对象是插件的options
参数。请参阅docs for sortable for the meaning of properties of the options object。对于handle
,它说:
限制排序开始点击指定的元素。
现在,这段代码看起来像是一个bug。它执行异步加载,但随后调用sortable而不等待加载完成。 load
接受回调,因此您通常会将其用于要对加载的HTML执行的任何操作。