js 怎么监听到页面关闭或页面跳转事件

发布网友 发布时间:2022-04-22 19:37

我来回答

3个回答

懂视网 时间:2022-04-22 14:22

在Javascript中,浏览器一般分为两大类:

① 基于IE内核的浏览器(版本号小于9的IE浏览器)

② 基于W3C内核的浏览器(版本号大于9的IE浏览器、Firefox、Google等浏览器)

1)基本语法:基于IE内核浏览器

dom对象.attachEvent(type,callback,capture) :为元素绑定事件监听程序

参数说明:

type:绑定的事件类型,如onclick、onmouseover、onmouseout

callback:事件的处理程序,通常是一个匿名函数

capture:使用的浏览器模型,冒泡模型与捕获模型,默认IE8以下的浏览器只支持冒泡模型!

2)基本语法:基于W3C内核的事件监听

dom对象.addEventListener(type,callback) :为W3C内核浏览器绑定事件监听

参数说明:

type:绑定事件类型,不带’on’前缀,如click,mouseover,mouseout

callback:事件的处理程序,通常是一个匿名函数

js.jpg

2、总结事件监听的区别

IE内核的监听方式与W3C内核的监听方式:

①方式不同

IE内核的浏览器使用attachEvent进行绑定

W3C内核的浏览器使用addEventListener进行绑定

②参数不同

IE内核浏览器,其绑定方式一共有三个参数type,callback,capture(使用的浏览器模型)

W3C内核浏览器,其绑定方式一共有二个参数,type和callback

③type参数不同

IE内核的浏览器,type是需要添加’on’前缀的,如onclick

W3C内核浏览器,type是不需要添加’on’前缀的,如click

④触发顺序不同

IE内核的浏览器,其事件监听是先绑定后触发,后绑定的先触发

W3C内核的浏览器,其事件监听是先绑定先触发,后绑定的后触发

热心网友 时间:2022-04-22 11:30

一、页面关闭:

用javascript重新定义 window.onbeforeunload() 事件 
在javascript里定义一个函数即可 
function window.onbeforeunload() { alert("关闭窗口")} 
alert()事件将会在关闭窗口前执行,你也可以用户决定是否关闭窗口 
function window.onbeforeunload() { 
if (event.clientX>document.body.clientWidth && event.clientY<0 ||event.altKey) 
window.event.returnValue="确定要退出本页吗?"; 

2.用onUnload方法 
在body 标签里加入onUnload事件 
body onUnload="myClose()" 

二、页面跳转好做,但监听不好做。

页面跳转方法:a.window.location.href='index.html';

b.window.navigate("index.html");

c.

if (confirm("你确定要跳转页面吗?"))...{ 

window.location.href="index.html"; 
}

热心网友 时间:2022-04-22 12:48

给个思路,不知道是否可行
在页面上做一个ajax,定期访问服务器,当在指定时间内不能接收到页面的ajax心跳,认为浏览器关闭了

页面跳转的监听,全部使用自定定义的js函数,好象是window.location = url,url是你要跳转的页面,这样执行到这个函数时,你就知道用户要跳转页面,然后在这个函数里做操作

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com