嗨我试图实现一些拖放功能到一个项目,但我有几个方面有点困难。我遇到的一个问题是创建自定义头像,我能够实现自定义头像,但必须稍微作弊并用CSS隐藏一些元素。帮助Dojo拖放
下面是一个片断我的代码不是整个代码,我要求所有必要pacakges等
dojo.query(".canDrag").forEach(function(node, index, nodelist){
var createSource = new dojo.dnd.Source(
node, {copyOnly: true, creator: createAvatar}
);
function createAvatar(item, hint) {
var node = dojo.doc.createElement("span");
dojo.addClass(node, "avatarStyle");
if (hint == "avatar") {
var dHtml = item;
console.log("trying " + dHtml);
node.innerHTML = item;
}
else {
console.log("if this show remove redudant call");
}
return {node: node, data: item, type: "product", copyOnly: true};
};
好了,所以你可以看到我创建然后我的DnD源给它一个自定义的创造者我试图建立我自己的自定义头像。所述actyual可拖动标记低于:
<div class="canDrag panelLeft">
<div class="dojoDndItem" dndType="product" title="digitalCamera" id="12345">
<h3 class="productTitle"><a href="">Samsung ES71</a></h3>
<p class="productType">Compact Digital Camera</p>
<img src="img/small_Cam.png" class="imgLMargin" alt="Samsung ES71"/>
<div class="dragHandle">
</div>
</div>
</div>
而不是附加从canDrag整个DIV和向下我想抓住不同的元素,如图像和标题。产品,只是显示这些。如果任何人有任何想法,我还提前感谢你,如果我的问题还不够清楚,我可以尝试重述。
干杯
你是什么意思的“而不是追加......”? – hugomg 2011-06-13 19:56:08
我使用innerHTML将变量'item'附加到节点上,而不是在'item'中选择不同的元素并将其添加到头像中。 – jonnyhitek 2011-06-13 20:06:13