window.onbeforeunload,浏览器关闭提示,兼容IE、FF、Chrome[通俗易懂]

window.onbeforeunload,浏览器关闭提示,兼容IE、FF、Chrome[通俗易懂]浏览器关闭提示,兼容IE、FF、Chrome,其它浏览器可以扩展,这里只对<a>标签做特别处理,因为onbeforeunload事件点击a连接弹框、刷新等很多操作都会触发此事件,可能还有其它的情况也会触发,参考这里的逻辑在进行修改, //页面离开或者浏览器关闭的时候给予提示防止用户误操作离开当前页面未保存数据可能丢失window.onbeforeunload=…

大家好,欢迎来到IT知识分享网。

浏览器关闭提示, 兼容IE、FF、Chrome,其它浏览器可以扩展, 这里只对<a>标签做特别处理,因为 onbeforeunload事件点击a连接弹框、刷新等很多操作都会触发此事件,可能还有其它的情况也会触发,参考这里的逻辑在进行修改,

 

//页面离开或者浏览器关闭的时候给予提示 防止用户误操作 离开当前页面未保存数据可能丢失
window.onbeforeunload = function(event) {
	return beforunload(event);
};
function beforunload(event) {
	event = event ? event : (window.event ? window.event : null);
	var myIE = myBrowser();
	if (myIE=="IE") { // IE
		var cy = event.clientY || event.target.event.clientY;
		var ak = event.altKey || event.target.event.altKey;
		if (cy < 0 || ak) {
			return "确定要离开本页面吗?";
		}
	} else {
		// Firefox、Chrome
		var nodeName = event.currentTarget.document.activeElement.nodeName;
		if (nodeName!="A") {
			return "确定要离开本页面吗?";
		}
	}
}

/***
 * 获取当前浏览器类型
 */
function myBrowser() {
    var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
    var isOpera = userAgent.indexOf("Opera") > -1;
    if (isOpera) { //判断是否Opera浏览器
        return "Opera"
    };
    if (userAgent.indexOf("Firefox") > -1) { //判断是否Firefox浏览器
        return "FF";
    };
    if (userAgent.indexOf("Chrome") > -1){
		return "Chrome";
	};
    if (userAgent.indexOf("Safari") > -1) { //判断是否Safari浏览器
        return "Safari";
    };
    if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) { //判断是否IE浏览器
        return "IE";
    };
}

 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/24482.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信