EasyUI: draggable() 在被调用时不初始化
EasyUI: draggable() doesn't initialize when being called
每次动态创建新的 HTML 元素时,我都试图调用 EasyUI 的 draggable
。我有这样的 draggable
方法:
function initializedrag() {
console.log("initializedrag called")
$(".item").draggable({
revert:true,
proxy:'clone',
onStartDrag:function(){
$(this).draggable('options').cursor = "not-allowed";
$(this).draggable('proxy').css('z-index',3);
},
onStopDrag:function(){
$(this).draggable('options').cursor="move";
}
});
console.log("end of initializedrag")
}
然后我使用 load
加载一个新的 html 站点,该站点包含 div 以及一些 li
项目和 a
标签class of .item
,像这样,当页面准备就绪时:
$(function() {
console.log("ready");
$("#shop").load("shopcontent/cat1.html");
initializedrag();
...
});
通过 console.logs,它可以很好地调用函数,但是,拖动功能实际上并没有起作用。当我有一个元素已经在页面上时,draggable
和页面加载时的 draggable
完全相同。但是,每当我调用 initializedrag
函数时,我都需要它工作。
这是怎么回事?
已修复!
这真的很简单,我只是将 initializedrag() 包含在一个函数中,该函数在加载内容时被调用!
所以而不是:
$("#shop").load("shopcontent/cat1.html");
initializedrag();
我做到了:
$("#shop").load("shopcontent/cat1.html", function() {
initializedrag();
});
这很奇怪,因为我昨天把 initializedrag() 的内容放在一个函数中,就像上面一样,但它没有工作:)
每次动态创建新的 HTML 元素时,我都试图调用 EasyUI 的 draggable
。我有这样的 draggable
方法:
function initializedrag() {
console.log("initializedrag called")
$(".item").draggable({
revert:true,
proxy:'clone',
onStartDrag:function(){
$(this).draggable('options').cursor = "not-allowed";
$(this).draggable('proxy').css('z-index',3);
},
onStopDrag:function(){
$(this).draggable('options').cursor="move";
}
});
console.log("end of initializedrag")
}
然后我使用 load
加载一个新的 html 站点,该站点包含 div 以及一些 li
项目和 a
标签class of .item
,像这样,当页面准备就绪时:
$(function() {
console.log("ready");
$("#shop").load("shopcontent/cat1.html");
initializedrag();
...
});
通过 console.logs,它可以很好地调用函数,但是,拖动功能实际上并没有起作用。当我有一个元素已经在页面上时,draggable
和页面加载时的 draggable
完全相同。但是,每当我调用 initializedrag
函数时,我都需要它工作。
这是怎么回事?
已修复! 这真的很简单,我只是将 initializedrag() 包含在一个函数中,该函数在加载内容时被调用! 所以而不是:
$("#shop").load("shopcontent/cat1.html");
initializedrag();
我做到了:
$("#shop").load("shopcontent/cat1.html", function() {
initializedrag();
});
这很奇怪,因为我昨天把 initializedrag() 的内容放在一个函数中,就像上面一样,但它没有工作:)