怎样用JS准确的判断浏览器刷新事件

JavaScript022

怎样用JS准确的判断浏览器刷新事件,第1张

    <script language="javascript">   

        window.onbeforeunload = function() {   

            var n = window.event.screenX - window.screenLeft   

            var b = n > document.documentElement.scrollWidth-20   

            if(b && window.event.clientY < 0 || window.event.altKey){   

                alert("这是一个关闭操作而非刷新")   

                window.event.returnValue = "" //此处放你想要操作的代码 

            }else{

                alert("这是一个刷新操作而非关闭")   

            }

        }  

    </script>

首先判断浏览器的类型,简便可用navigator.userAgent()获取浏览器的字符串,与浏览器类型做查找即可。 目前对Chrome和firfox区分关闭和刷新成功。 浏览器为firfox时flag为false,Chrome为true。window.onload(){window.onunload = function() {if(flag){console.log('关闭操作')}else {console.log('刷新操作')}}window.onbeforeunload = function () {if(!flag){console.log('关闭操作')}else{console.log('刷新操作')}}}