Как создать событие с заполненным свойством dataTransfer?

У меня есть локальный html-файл с кодом javascript.

Я должен покрыть перетаскивание тестами.

Он использует только IE.

В коде javascript перехватывается событие "drop" и анализируется содержимое dataTransfer (e.dataTransfer.getData("Text")).

В тесте я имитирую событие со следующим кодом:

event = document.createEventObject();

Здесь создается событие, которое содержит dataTransfer == null.

Запись невозможна, так как свойство доступно только для чтения.

target.fireEvent("ondrop", event);

Событие запускается в коде javascript, но dataTransfer имеет значение null.

Я должен поместить какой-нибудь тестовый элемент в dataTransfer.

Как я могу решить эту проблему?


person Alexey    schedule 23.04.2013    source источник
comment
Вы должны настроить jsfiddle, чтобы продемонстрировать свою проблему.   -  person redaxmedia    schedule 28.11.2013


Ответы (1)


Вы можете попробовать использовать интерфейс CustomEvent, но я не уверен, что он работает в IE.

var event = new CustomEvent('build', { 'detail': elem.dataset.time });

https://developer.mozilla.org/en-US/docs/Web/API/document.createEvent#Adding_custom_data_.E2.80.93_CustomEvent

person Dan Brinkman    schedule 07.12.2013