jquery-ui - on jquery(MySelctor).draggable , from callback 函



using :

jQuery(MySelector).dragabble ( start: function( e, ui ) { } )

启动功能: start 事件给出 $(this) 从 MySelector 中拖动当前拖动的元素,这是正确的。

如何在MySelector中的每个元素上循环, 所以我可以制作额外的代码来处理这些其他元素。 实际上我问,函数内的对象名称是什么(e,ui ) 我可以得到我的选择器的元素列表 ?, 所以我可以在列表中循环。

如果我使用 className,它当然会"记住"当前"我的选择器"中没有的所有元素

每个孩子使用

$(MySelector).children().each(function () {
//Your Code 
}

.儿童( [选择器 ] )

类型:选择器

一个字符串,其中包含要与之匹配元素的选择器表达式。

很难理解你想要什么,但我假设你想在可拖动操作开始时获取当前 MySelector DOM 元素的所有子 DOM 元素。

只需使用this.但是因为this也可能是MySelector的孩子,所以你首先需要得到最接近MySelector元素。此元素将是this的父元素。喜欢这个:

jquery(MySelector).dragabble({
start: function(e, ui) {
var parent = this.closest(MySelector);
var children = parent.children;
...
} 
});

对于迭代,您需要使用以下Array.from()创建此列表的数组:

...
Array.from(children).forEach((child) => {
console.log(child);
});
...

当然,您可以将代码缩短为单行代码或使用jQuery获得相同的效果。我喜欢使用普通的javascript。

最新更新