[英]Angular : how remove dropped item in drag and drop angular/cdk
[英]Dojo Drag and drop: how to format a dropped item?
我正在使用 Dojo 嘗試使用 dojo 的 dnd 構建應用程序。 我環顧四周尋找這個問題的答案,但我不確定如何實現這一點。 我有一個 Source 對象,其中有一堆以某種方式用 html/css 格式化的產品。 當我將這些對象拖到我的 Target 對象上時,放置的項目看起來仍然和以前一樣。 我想在被刪除后以不同的方式對其進行格式化。 任何想法如何做到這一點?
您可以通過將creator
函數 ref 傳遞給您的 Source 對象來完成此操作。
假設您有 dojo 1.3 並且可以使用dojo.create.
在你的 JS 中:
function myCreator( item, hint ) {
var myDiv = dojo.create( 'div', { innerHTML: item.name });
if (hint == 'avatar') {
// create your avatar if you want
myDiv.innerHTML = 'I'm an avator of ' + item.name;
}
return {node: myDiv, data: item, type: item.type};
}
然后在您的 HTML(div 或其他)中:
<div dojoType="dojo.dnd.Source" creator="myCreator"></div>
如果您想以編程方式創建Source
項目,只需像這樣傳入創建者:
var dnd = new dojo.dnd.Source(someNode, { creator: myCreator });
我在上面的例子中使用了item.name
。 這一切都取決於您的項目,因此您可能想要使用不同的字段。
SitePen 博客上提供了創建dojo.dnd
頁面的出色dojo.dnd
。
topic.subscribe("/dnd/drop", function(source, nodes, copy, target) {
target.forInSelectedItems(function(item, id) {
//alert(document.getElementById(id));
if (document.getElementById(id).innerHTML == "something from your source") {
//create what you want, and add it to id
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.