Dojo 1.6拖放'Dnd'错误(Source.xd.js(第8行))

时间:2011-07-29 20:29:50

标签: drag-and-drop dojo javascript

http://jsfiddle.net/ykNJ8/

这是来自CDN的vanilla实现,在localhost上开发。 我似乎无法找到一种一致的方式来复制它,但它似乎发生在拖动列表底部附近的项目时。拖动工具提示不会锁定到鼠标,而是附加到文档的底部,不会消失。

Tool tip broken

这个持久的工具提示会对持续尝试使用dnd作出反应。

Broken tool tip reacting

我检查了fire-bug ie和chrome控制台中的错误,它总是返回相同的东西:

Chrome:

Uncaught TypeError: Cannot read property 'type' of undefined   Source.xd.js:8 

Firebug:

_a.getItem(_b[i].id) is undefined 
window[(typeof (djConfig)!="undefined"..._4.dnd.AutoSource(_3d,_3c);}});}}};});    Source.xd.js (line 8)

IE并没有那么有用。

请帮助大家!我在jsfiddle中创建了我的页面的精简版本:http://jsfiddle.net/ykNJ8/

我测试了它,错误确实发生在小提琴中。

1 个答案:

答案 0 :(得分:3)

嘿,永远带我,但我发现了你的问题。问题是你正在实例化两个 dojo.dnd.Source。 第一种:当你在id ='faq'div上指定dojoType属性时。 第二种:当你调用新的dojo.dnd.Source(sortID)时。

结果是你在同一个div上构建了两个小部件并且它们互相争斗。

这是一个通过仅使用标记驱动的小部件来解决问题的小提琴: http://jsfiddle.net/TtbPh/1/

不要放弃Dojo小部件!有一个相当陡峭的学习曲线,但一旦你把它固定下来,你会想知道没有它们你是如何生活的。)