视频网站上传视频过程中,如果点击了页面的超链接,或者页面的关闭按钮,会有个提示框,提示要离开页面。
那么这个提示框是如何触发的?
我的第一个思路是监听页面所有超链接,以及要离开页面的操作,点击后,将默认事件保存,比如点击了一个超链接,将链接地址保存,出来是否离开页面的提示框,如果选择是,用 js 跳转,如果选择否,不操作。这样做的话,获取所有会中断上传的事件的元素,可能会很多。
另一个想法是,基于上传是 xhr2,有个 onabort 事件,能监听到上传中止,这个方案没有很成熟的想法,只是知道有这个事件,能和这个需求结合起来吗?感觉如果可以的话,是这样比较方便。感觉两个都是事件监听,没想到能结合的方法。
求老司机给个建议
1
kslr 2017-07-24 17:30:49 +08:00 1
beforeunload
|
2
tanranran 2017-07-24 17:47:18 +08:00 1
$(window).bind('beforeunload',function(){
return '您输入的内容尚未保存,确定离开此页面吗?'; }); |
3
hanzichi OP @tanranran #2 可以可以,不过为什么我用原生的,有问题?
``` window.addEventListener('beforeunload', function (e) { return '您正在编辑的 issue 还没有提交,确定要离开?'; }); ``` |
4
tanranran 2017-07-24 18:04:18 +08:00 1
|
5
crystom 2017-07-24 18:16:46 +08:00 1
window.addEventListener("beforeunload", function (e) {
var confirmationMessage = "\o/"; e.returnValue = confirmationMessage; // Gecko, Trident, Chrome 34+ return confirmationMessage; // Gecko, WebKit, Chrome <34 }); |
8
hanzichi OP # 测试
- 测试 - 测试 |
9
hanzichi OP <h1>测试</h1>
<ul> <li>测试</li> <li>测试</li> </ul> |