將函數附加到可拖動項目我想爲用戶創建一個興趣列表。但是在這個時候,我有點喋喋不休。我想要以下; 兩行興趣,一個是用戶的興趣愛好,另一個興趣愛好可能是用戶感興趣的。如何使用.replaceWith()
現在我想要用戶能夠點擊那裏的興趣刪除它們,我使用這個功能(偉大的工程);
// delete interest
$(".interest-item-delete").click(function() {
$(this).closest('.interests-item').replaceWith('<div class="interests-item-empty">Sleep<br>hier iets<br>wat je leuk<br>vindt</div>');
});
然後,我希望用戶能夠權益(帶班「利益項目空」格)添加到空的空間在那裏當前利益列表。我正在使用這也很好的工作;
// add interest
$('.interests-search-image').draggable({
revert: 'invalid',
});
$('.interests-item-empty').droppable({
accept: '.interests-search-image',
drop: function(ev, ui){
var title = $(ui.draggable).attr("data-title");
var imgSrc = $(ui.draggable).attr("data-imgSrc");
var categorie = $(ui.draggable).attr("data-cat");
$(ui.draggable).remove();
$(this).replaceWith('<div class="interests-item"><div class="interest-item-category">'+categorie+'</div><div class="interest-item-image"><img src="'+imgSrc+'"><div class="interest-item-delete">X</div></div><div class="interest-item-title">'+title+'</div></div>');
},
});
但現在我得到了2個問題; 1.當我刪除一個項目,我不能放下任何東西(雖然它有正確的類)。 2.當我將一個項目拖到用戶的興趣列表中時,我無法刪除它們。
我猜測這兩個問題都有一種我不熟悉的解決方案。希望您能夠幫助我。
根據要求:我已經嘗試過;
// delete interest
$(".interest-item-delete").click(function() {
$(this).closest('.interests-item').replaceWith('<div class="interests-item-empty">Sleep<br>hier iets<br>wat je leuk<br>vindt</div>');
$('.interests-item-empty').droppable({
accept: '.interests-search-image',
drop: function(ev, ui){
var title = $(ui.draggable).attr("data-title");
var imgSrc = $(ui.draggable).attr("data-imgSrc");
var categorie = $(ui.draggable).attr("data-cat");
$(ui.draggable).remove();
$(this).replaceWith('<div class="interests-item"><div class="interest-item-category">'+categorie+'</div><div class="interest-item-image"><img src="'+imgSrc+'"><div class="interest-item-delete">X</div></div><div class="interest-item-title">'+title+'</div></div>');
$(".interest-item-delete").click(function() {
$(this).closest('.interests-item').replaceWith('<div class="interests-item-empty">Sleep<br>hier iets<br>wat je leuk<br>vindt</div>');
$('.interests-item-empty').droppable({
accept: '.interests-search-image',
drop: function(ev, ui){
var title = $(ui.draggable).attr("data-title");
var imgSrc = $(ui.draggable).attr("data-imgSrc");
var categorie = $(ui.draggable).attr("data-cat");
$(ui.draggable).remove();
$(this).replaceWith('<div class="interests-item"><div class="interest-item-category">'+categorie+'</div><div class="interest-item-image"><img src="'+imgSrc+'"><div class="interest-item-delete">X</div></div><div class="interest-item-title">'+title+'</div></div>');
},
});
});
},
});
});
如上所述,這將使拖動的項目可刪除。但是,當我刪除它,並刪除一個新的項目,該項目是不可刪除的。所以這就是爲什麼我認爲我需要一個循環或什麼。
您需要初始化新添加的元素上的droppable/draggable。插件不支持委託 –
我試過了,但然後我這樣做,然後我可以拖 - >拖放 - >刪除 - >拖 - >滴然後錯誤,可能是因爲我需要做一個循環或什麼。我仍然卡... – Augus
郵政編碼,你已經通過編輯您的問題 –