jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了整页叠加拖放jQuery大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
当有人进入带有文件的窗口时,我正在尝试添加整页覆盖.
这是有效的,但是当我添加叠加时,它会立即触发’dragleave’事件,因为叠加会阻止拖动.这导致闪烁效应.

浏览器兼容性
– Chrome和Safari似乎有这个问题
– 当你按住光标时,Firefox有这个问题,移动时没问题.
– IE9似乎工作@H_944_11@

我想和imgur.com一样.
如果将文件拖到其页面,则会显示叠加而不会闪烁等.@H_944_11@

第一解决方案@H_944_11@

$(window).bind('dragover',dragover);
$(window).bind('drop',drop);
$(window).bind('dragleave',dragleavE);

Full example on jsFiddle@H_944_11@

解决方案@H_944_11@

我还尝试将’dragleave’事件设置为’.overlay’类,如下所示:@H_944_11@

$('.overlay').bind('dragleave',dragleavE);

Full example on jsFiddle@H_944_11@

但是如果你将鼠标悬停在div中的段落上,它也会发送一个’dragleave’事件.@H_944_11@

有人知道如何防止这种情况吗?
或者只有当你离开浏览器窗口时如何“拖拉”?@H_944_11@

谢谢!@H_944_11@

解决方法

在Hide上添加超时有助于防止闪烁!

function dragover(event) {
    clearTimeout(tid);
    event.stopPropagation();
    event.preventDefault();
    $('.overlay').show();
}

function dragleave(event) {
    tid = setTimeout(function(){
        event.stopPropagation();
        $('.overlay').hide();
    },300);
}

我编辑了你的小提琴http://jsfiddle.net/yApUZ/@H_944_11@

大佬总结

以上是大佬教程为你收集整理的整页叠加拖放jQuery全部内容,希望文章能够帮你解决整页叠加拖放jQuery所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。