2024年10月onbeforeunload事件失效插件(jsp页面关闭调用后台java方法,在线)

 更新时间:2024-10-12

  ⑴onbeforeunload事件失效插件(jsp页面关闭调用后台java方法,在线

  ⑵jsp页面关闭调用后台java方法,在线

  ⑶关闭浏览器跟你用户退出是没关系的吧~用户登录的时间大部分是跟session有关系的吧session是跟服务器有关系的吧而浏览器跟你服务器是没关系的吧~再加上如果他是不小心或者习惯性关闭了然后又要重新登录一次这样就影响用户交互了你可以设置session的生命周期从而做到自动下线或者写一个IE插件也许能行吧~

  ⑷求Javascript达人解惑!!

  ⑸这段代码是用来判断当前页面刷新还是关闭。首先有点知识我得和楼主说明一下:其实这段代码主要是用于聊天室窗口的,一般的聊天室窗口是除了标题栏和侧滑栏,其余的XX栏都没有的。用javascript弹出一个这样的窗口的代码是:《scriptlanguage=“JavaScript“》window.open(’欲加载的网页的地址’,’_blank’,’width=窗口宽,height=窗口高,menubar=no,toolbar=no,directories=no,location=no,status=no,resizable=no,scrollbars=yes’);《/script》其中值为“no”的就是不要的XX栏。这段代码中有几个属性值得说明一下:.window.onbeforeunload():此方法被触发于:关闭浏览器窗口通过地址栏或收藏夹前往其他页面的时候点击返回,前进,刷新,主页其中一个的时候点击一个前往其他页面的url连接的时候如果是用于上面我提到的聊天室窗口,那就只考虑两个事件四个方法:、正常关闭:点击关闭按钮(右上角,这个按钮的大小和代码中那个“-”有关,最后我会说到;或者按下ALT+F键(所以代码中有对ALT键的检测。、正常刷新:按下F键;或者通过右键刷新。.window.event.screenX:鼠标相对于用户屏幕的水平位置window.screenLeft:窗口左上角相对于屏幕左上角的水平位置window.event.clientY:鼠标在窗口客户区域(除去所有的XX栏中的Y坐标(比如在标题栏上时,该值为负值window.event.altKey:当alt键按下时,值为TRUE,否则为FALSE。只读。document.documentElement.scrollWidth:窗口网页正文全文宽所以n=window.event.screenX-window.screenLeft:求出鼠标在当前窗口上的水平位置(参照:当前窗口左上角为、坐标。b=n》document.documentElement.scrollWidth-:只看水平坐标:鼠标在当前窗口内时,n《m,b为false;鼠标在当前窗口外时,n》m,b为true。这个值是指关闭按钮的宽度。m=document.documentElement.scrollWidth-window.event.clientY《:只看垂直坐标:鼠标在客户区内时,y》,x为false;鼠标在客户区外时,y《,x为true。y=window.event.clientY综上:当onbeforeunload时间发生时,有ALT按下,或者鼠标的位置在标题栏的最右上角(鼠标停留在关闭按钮上时。就能执行if为真的语句了。window.event.returnValue=““;主要是用来当用户关闭了窗口而不是刷新时返回一个值,这个值由你设定。《!----------------------------------------------------------------》如果这样说,不太好懂。我把代码做成了实例,自己刷新或者关闭页面试试就明白了。两个页面,第一个页面用来弹出第二个页面,第二页面为我们需要了解的代码所在页面。test.html《html》《body》《scriptlanguage=“JavaScript“》window.open(’test.html’,’_blank’,’width=,height=,menubar=no,toolbar=no,directories=no,location=no,status=no,resizable=no,scrollbars=yes’);《/script》《/body》《/html》test.html《html》《body》《body》《SCRIPTLANGUAGE=“JavaScript“》window.onbeforeunload=function(){varn=window.event.screenX-window.screenLeft;//检测鼠标相对于用户屏幕的水平位置-网页正文部分左:求出鼠标在当前窗口上的水平位置(参照:当前窗口右上角为、坐标varm=document.documentElement.scrollWidth-;//网页正文全文宽vary=window.event.clientY;//返回鼠标在窗口客户区域(除去所有的XX栏中的Y坐标varz=window.event.altKey//当alt键按下时,值为TRUE,否则为FALSE。只读。varb=n》m;//只看水平坐标:鼠标在页面内时,n《m,b为false;鼠标在页面外,n》m,b为true。varx=y《;//只看垂直坐标:鼠标在客户区内时,y》,x为false;鼠标在客户区外时,y《,x为true。if(b&&x||z)//当onbeforeunload时间发生时,{alert(“是关闭而非刷新

  ⑹“+“鼠标在当前窗口上的水平位置:“+n+“

  ⑺网页正文全文宽:“+m+“

  ⑻鼠标在窗口客户区域中的Y坐标:“+y+“

  ⑼ALT键是否按下:“+z);window.event.returnValue=““;//这里可以放置你想做的操作代码}else{alert(“是刷新而非关闭

  ⑽“+“鼠标在当前窗口上的水平位置:“+n+“

  ⑾网页正文全文宽:“+m+“

  ⑿鼠标在窗口客户区域中的Y坐标:“+y+“

  ⒀ALT键是否按下:“+z);}}《/script》《p》聊天室《/p》《/body》《/html》注意::::::这个代码看似不错,但是有一点,它的基础是以用户的浏览器窗口为标准windows窗口而定的。也就是说,用户的浏览器窗口得是win那个样子的,因为这个样子下,关闭按钮的大小才会在象素以内。如果用户的窗口不是标准的windows窗口,而是其它的主题等等,这段代码可能就用不了了!此外有个小BUG,当鼠标停留在最右上角(关闭按钮时按下F。代码会执行关闭窗口时的代码,但是窗口却只是刷新而已却不会关闭。

  ⒁求教关于火狐浏览器下区分关闭或刷新页面的方法

  ⒂Onunload与OnbeforeunloadOnunload,onbeforeunload都是在刷新或关闭时调用,可以在《script》脚本中通过window.onunload来指定或者在《body》里指定。区别在于onbeforeunload在onunload之前执行,它还可以阻止onunload的执行。

  ⒃Onbeforeunload也是在页面刷新或关闭时调用,Onbeforeunload是正要去服务器读取新的页面时调用,此时还没开始读取;而onunload则已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调用。Onunload是无法阻止页面的更新和关闭的。而Onbeforeunload可以做到。曾经做一个考试系统,涉及到防止用户半途退出考试(有意或者无意,代码如下:Java代码:

  ⒄《script?type=“text/javascript“》??《!--????????window.onbeforeunload?=?onbeforeunload_handler;??????window.onunload?=?onunload_handler;??????function?onbeforeunload_handler(){??????????var?warning=“确认退出?“;??????????????????return?warning;??????}????????????function?onunload_handler(){??????????var?warning=“谢谢光临“;??????????alert(warning);??????}??//?--》??《/script》????《script?type=“text/javascript“》《!--window.onbeforeunload?=?onbeforeunload_handler;window.onunload?=?onunload_handler;function?onbeforeunload_handler(){????var?warning=“确认退出?“;???return?warning;????}???function?onunload_handler(){????var?warning=“谢谢光临“;????alert(warning);????}//?--》《/script》

  ⒅需要注意的是,新版火狐浏览器进一步提高了js的限制等级,如果常规方法无效,则要考虑通过flash插件实现权限获取后实现相关功能。

  ⒆javascript事件流是什么有哪些事件流

  ⒇事件流描述的是从页面中接收事件的顺序,IE采用事件冒泡流,标准采用事件捕获流,最后addEventLister给出了第三个参数同时支持冒泡与捕获。常用的事件主要有:()单击事件:onclick。用户单击鼠标按键时产生的事件,同时。nclick指定的事件处理程序或代码将被调用执行.()改变事件:onchange。当text或textarea元素内的字符值改变或select表格选项状态改变时发生该事件。()选中事件:onselect。当text或textarea对象中的文字被选中时会引发该事件。如:《ipnuttype=“text“value=“默认信息”onselect=alert(”您选中T文本框中的文字”)》()获得焦点事件:onfocus。用户单击text或textarea以及select对象,即光标落在文本框或选择框时会产生该事件。如:《selectname=“zhengjian“onfocus=alert(”我成为焦点”)》()失去焦点事件:onblur.失去焦点事件正好与获得焦点事件相对,当text或textarea以及select对象不再拥有焦点而退出后台时,引发该事件。()载人文件事件:onload,’当页面文件载人时产生该事件。onload的一个作用就是在首次载人一个页面文件时检测cookie的值,并用一个变量为其赋值,使它可以被源代码使用,本事件是window的事件,但是在HTML中指定事件处理程序时,一般把它写在《body》标记中。如:《bodyonload=alert(”正在加载页面,请等待一”)》()卸载文件事件:onunload。与载人文件事件。nload正好相反,当Web页面退出时引发的事件,并可更新。ookie的状态。如:《bodyonunload=confirm(”你确定要离开本页?”)》()鼠标镇盖事件:onmouseover,onmouseover是当鼠标位于元素上方时所引发的事件。如:《inputtype=“boutton“value=”按钮”onmouseover=“window.status=‘请您注意下面的状态栏·;returntrue“》()鼠标离开事件:onmouseout,onmouseout是当鼠标离开元素时引发的事件。如果和鼠标覆盖事件同时使用,可以创建动态按钮的效果。()一般事件。ondbclick:鼠标双击事件。onkeypress:当键盘上的某个键被按下并且释放时触发的事件,要求页面内必须有激活的对象。onkeydown:当键盘上某个键被按下时触发的事件,要求页面内必须有激活的对象。onkeyup:当键盘上某个键被放开时触发的事件,要求页面内必须有激活的对象。()页面相关事件。onabort:图片在下载时被用户中断时触发的事件。onbeforeunload:当前页面的内容将要被改变时触发的事件。

  ⒈js关闭窗口时跳转的问题

  ⒉window.onbeforeunload=function(e){varevt=e?e:(window.event?window.event:null);//此方法为了在firefox中的兼容if(evt)evt.returnValue=’确定离开。’;}其他登录人还是能看到:userlist.jsp服务器删除了用户后:其他登录的人还去要重新抓取数据获取最新在线用户,这个地方需要轮训(目前都是这么做的,不过也可以通过其他插件也可如flash强制推送等。。。对了浏览器关闭事件兼容性不好而且刷新与关闭不能正确判断所以要写cookie做标志希望能帮到你

  ⒊Chrome插件编写问题:如何通过插件实时记录网页的Url、停留时间、referrerUrl(前驱)

  ⒋url:location.href停留时间:onload时候打个时间戳,onbeforeunload的时候再打个戳,相减就是你要的。refer:document.referrer以上都是js方法哦

  ⒌求助关于ReferrerControl插件问题

  ⒍url:location.href停留时间:onload时候打个时间戳,onbeforeunload的时候再打个戳,相减就是你要的。refer:document.referrer以上都是js方法哦

  ⒎如何用JS捕捉浏览器关闭事件,我想在浏览器关闭的时候记录一些日志要兼容Firefox和IE、、!Q.

  ⒏尊敬的用户,您好!很高兴为您答疑。考虑到浏览器实际是一个应用载体,而web页面是此载体内的应用,您希望通过内部应用过多地接管外部事件,而不依赖可以获得更高权限的内容(如插件等,是很难办到的。而在跨浏览器的情况下,因为不同的浏览器设计方面的差异以及安全机制的迥异,使得您的需求更加难以实现,建议考虑换个思路实现此需求。希望我的回答对您有所帮助,如有疑问,欢迎继续咨询我们。

您可能感兴趣的文章:

相关文章