ondragstart不会在Firefox中触发 [英] ondragstart not triggering in firefox

查看:117
本文介绍了ondragstart不会在Firefox中触发的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,我正在尝试对jQuery使用html拖放功能.我这样生成可拖动的(按钮)

Hello I'm trying to use the html drag and drop feature with jquery. I generate my draggable (a button) like this

$("#tb > tbody > tr").append(($("<td>")).append($("<input/>", {type:"button", id:"bt", draggable:"true", value:"test", class:"bt-test"}))).append($("</td>"));

到目前为止,在阅读了一些有关该主题的内容之后,我正在尝试处理类似这样的不同事件:

So far, and after reading a bit on the subject, I'm trying to deal with the different events like this :

$(document).on("dragstart", ".bt-test", function(evt)
{
    evt.originalEvent.dataTransfer.setData("text", $(this).val());
    alert(evt.originalEvent.dataTransfer.getData("text"));
    evt.originalEvent.preventDefault();
});
$(document).on('dragenter', function(evt){evt.originalEvent.preventDefault();});
$(document).on('dragleave', function(evt){evt.originalEvent.preventDefault();});
$(document).on('dragover', function(evt){evt.originalEvent.preventDefault();});


// still irrelevant at this point
$(document).on("drop", ".btCase", function(evt)
{
    var data = evt.originalEvent.dataTransfer.getData("text");
    $(this).val(data);
    event.originalEvent.preventDefault();
});

dragstart侦听器中的警报在chrome上显示得很好,但是在Firefox上却没有.

The alert within the dragstart listener shows up just fine on chrome but it doesn't on firefox.

我已经尝试将 ondragstart ="dragstart_handler(event);" 直接添加到我的按钮中,如

I already tried adding an ondragstart="dragstart_handler(event);" directly into my button as mentionned in https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API but the problem remains. I also tried replacing the event.originalEvent.preventDefault(); with return false();

有什么提示吗?

edit:小提琴> http://jsfiddle.net/Nn4x2/4/

edit : fiddle > http://jsfiddle.net/Nn4x2/4/

推荐答案

这适用于 div 元素,请参见 http://jsfiddle.net/Nn4x2/26/似乎Firefox不支持可拖动的输入按钮.最好使用样式化的锚元素.

This works with a div element, see http://jsfiddle.net/Nn4x2/26/ It seems draggable input buttons are not supported in Firefox. It may be best to use a styled anchor element instead.

这是作为按钮元素的Firefox错误记录的-请参阅 https://bugzilla.mozilla.org/show_bug.cgi?id = 568313

This is logged as a Firefox bug for button elements - see https://bugzilla.mozilla.org/show_bug.cgi?id=568313

这篇关于ondragstart不会在Firefox中触发的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆