javascript-可排序的jQuery UI-替换已删除项目的内容
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-可排序的jQuery UI-替换已删除项目的内容,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1727字,纯文字阅读大概需要3分钟。
内容图文
![javascript-可排序的jQuery UI-替换已删除项目的内容](/upload/InfoBanner/zyjiaocheng/660/57261f0abdfc4411b6c3cb4ce05766af.jpg)
我有三个方块,“可拖动”,“可排序”和“可拖放”
在“可拖动”内部,我几乎没有这样构建的元素:
<li class="draggable ui-draggable ui-draggable-handle" id="header-1">
<img src="http://placehold.it/150x100">
</li>
可以将这些元素拖放到“可排序”中,并将此处拖动的元素拖放到“可拖放”中,这会将它们从“可排序”中删除,基本上是将其删除.
我如何用新的替换掉落到“可排序”中的图像而不替换“可拖动”中的图像?
这是我尝试过的:
我尝试将其添加到“可拖动”中:
start: function (event, ui) {
$(this).addClass('testing');
}
这会将“ .testing”类添加到当前拖动的项目中.
并将其添加到“ sortable”中:
receive: function (event, ui) {
$('.testing').replaceWith('<img src="http://placehold.it/400x300">');
这里的问题是要替换整个标记,包括“ li”父代,而我只希望替换“ img”元素.
这是现在的工作方式的jsbin.
解决方法:
很抱歉误解了这个问题.您所描述的是:修改放置的元素而不修改原始的可拖动对象(让我知道是否再次被误解了).
通常使用helper选项(通常带有函数)来完成此操作,但是helper:“克隆”您也可以使用.这将导致删除可拖动对象的副本.这意味着您可以只将选择器限制在当前容器中,而根本不需要“ .testing”类(当然,如果可以方便地查看正在发生的事情,当然可以保留它):
receive: function (event, ui) {
$('.testing', this).replaceWith('<img src="http://placehold.it/400x300">');
// or...
$(this).find('.testing').replaceWith('<img src="http://placehold.it/400x300">');
// or without the superfluous class...
$(this).find('li.draggable').replaceWith('<img src="http://placehold.it/400x300">');
// or to keep the li tags as per my original post's suggestion...
$('li.draggable > img', this).replaceWith('<img src="http://placehold.it/400x300">');
}
请记住,jQuery的克隆仅创建DOM节点的副本,其jQuery属性均未保留.放置的帮助程序将不再是可拖动的小部件(尽管在您的情况下,您正在使用可排序的控件,但仍可以拖动它)
内容总结
以上是互联网集市为您收集整理的javascript-可排序的jQuery UI-替换已删除项目的内容全部内容,希望文章能够帮你解决javascript-可排序的jQuery UI-替换已删除项目的内容所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。