Javascript Firefox:无法拖动<;的元素子元素;a>;超链接
考虑以下标记:Javascript Firefox:无法拖动<;的元素子元素;a>;超链接,javascript,jquery,firefox,draggable,drag,Javascript,Jquery,Firefox,Draggable,Drag,考虑以下标记: <a class="link" href="#"> <sup draggable="true">Foo</sup> Bar </a> 这件事永远不会发生。我一直在研究,在Firefox中,默认情况下链接是可拖动的,所以我认为这可能会起作用: $(document).ready(function () { $(".link").on('dragstart', function(e) { e.prev
<a class="link" href="#">
<sup draggable="true">Foo</sup> Bar
</a>
这件事永远不会发生。我一直在研究,在Firefox中,默认情况下链接是可拖动的,所以我认为这可能会起作用:
$(document).ready(function () {
$(".link").on('dragstart', function(e) {
e.preventDefault();
e.stopPropagation;
//event return false; does not work.
});
$("sup").on('dragstart', function(e) {
console.log('shikaka');
});
});
而且,做
也不管用
我甚至尝试过一些“疯狂”的东西,比如给孩子触发事件:
$(".link").on('dragstart', function (e) {
e.preventDefault();
e.stopPropagation;
$(this).find('sup').trigger('dragstart');
});
互联网上有一些帖子显示,您也可以通过取消mousedown
事件来禁用该事件。使用dragenter
和mousedown
尝试的上述任何示例都具有相同的效果
我的问题是,有没有办法“短路”firefox中的默认事件,让它触发子元素的事件?或者,有没有办法只阻止父事件,但仍然能够拖动子元素?我正在测试它,如果您从
中删除href
属性,我会按照您的方法,将href添加到链接的数据属性和单击事件处理程序中,以便能够导航。谢谢你的回答。
$(".link").on('dragstart', function (e) {
e.preventDefault();
e.stopPropagation;
$(this).find('sup').trigger('dragstart');
});