javascript-是否可以以编程方式触发拖动事件?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-是否可以以编程方式触发拖动事件?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1215字,纯文字阅读大概需要2分钟。
内容图文
![javascript-是否可以以编程方式触发拖动事件?](/upload/InfoBanner/zyjiaocheng/679/a79f87055e1d4d50a5cd0863488c527e.jpg)
我目前正在使用Draggabilly库向我的应用程序添加拖放功能.我想做的是在CKEditor实例上触发drop事件(HTML5本机事件),然后执行任务.到目前为止,这是我所发现的:
> CKEditor将仅侦听本地HTML5事件,例如拖动
和下降.
> Dragabilly不会触发本地拖放事件.而是使用mousedown和mouseup.
我的问题是,有没有一种方法可以使用dispatchEvent或类似的方法来模拟dragstart,drag和drop事件?
如果除了我提到的方法之外,还有其他更好的解决方法,请告诉我.
谢谢.
解决方法:
我已经基于stackoverflow中的一些代码完成了该功能,我也阅读了
在MDN中,我正在使用的对象表单已被弃用,但对我有用,我会在将来纠正此问题,但是现在这可以为您提供帮助
function fireCustomEvent(eventName, element, data) {
'use strict';
var event;
data = data || {};
if (document.createEvent) {
event = document.createEvent("HTMLEvents");
event.initEvent(eventName, true, true);
} else {
event = document.createEventObject();
event.eventType = eventName;
}
event.eventName = eventName;
event = $.extend(event, data);
if (document.createEvent) {
element.dispatchEvent(event);
} else {
element.fireEvent("on" + event.eventType, event);
}
}
以及如何将其用于您要求的事件
fireCustomEvent('dragover', someDomObject);
fireCustomEvent('drop', someDomObject, {dataTransfer: {files: [mockedfile]}});
fireCustomEvent('dragend', someDomObject);
内容总结
以上是互联网集市为您收集整理的javascript-是否可以以编程方式触发拖动事件?全部内容,希望文章能够帮你解决javascript-是否可以以编程方式触发拖动事件?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。