Dojo 1.6 Drag and Drop 'Dnd' Ошибка (Source.xd.js (строка 8)) - PullRequest
1 голос
/ 30 июля 2011

http://jsfiddle.net/ykNJ8/

Это ванильная реализация из CDN, разработанная на localhost.Кажется, я не могу найти последовательный способ воспроизвести его, но, похоже, это происходит чаще всего при перетаскивании элементов в нижней части списка.Подсказка для перетаскивания не привязывается к мыши, а добавляется к нижней части документа, где она не исчезнет.

Tool tip broken

Эта постоянная подсказка реагирует на продолжающиеся попытки использовать dnd.

Broken tool tip reacting

Я проверил ошибку в пожаре-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 Ответ

3 голосов
/ 30 июля 2011

Хех, взял меня навсегда, но я разобрался с твоей проблемой. Проблема в том, что вы создаете экземпляр двух dojo.dnd.Source. Первое: когда вы указываете атрибут dojoType в вашем id = 'faq' div. Второе: когда вы вызываете новый dojo.dnd.Source (sortID).

В результате вы создали два виджета для одного элемента div, и они сражаются друг с другом.

Вот скрипка, которая решает проблему, используя только виджет, управляемый разметкой: http://jsfiddle.net/TtbPh/1/

Пока не отказывайтесь от виджетов Dojo! Существует довольно крутая кривая обучения, но как только вы ее поймете, вы удивитесь, как вы когда-либо жили без них:)

...