首頁 >web前端 >js教程 >JS如何停用瀏覽器的退格鍵

JS如何停用瀏覽器的退格鍵

不言
不言原創
2018-07-11 17:48:191492瀏覽

這篇文章主要介紹了關於JS如何停用瀏覽器的退格鍵,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

我們在真實的專案開發中常會使用JS 對鍵盤上的一些按鍵進行停用,常見的比如說退格鍵(backspace/ 後退鍵),我在一個專案中就遇到過在頁面編輯的時候禁用掉退格鍵,因為退格鍵會發生頁面後退,這樣編輯的內容都會失去了,非常噁心的人。 ok ,廢話少說,直接上程式碼。

  <script type="text/javascript">
        //处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外
        function forbidBackSpace(e) {
            var ev = e || window.event; //获取event对象 
            var obj = ev.target || ev.srcElement; //获取事件源 
            var t = obj.type || obj.getAttribute('type'); //获取事件源类型 
            //获取作为判断条件的事件类型 
            var vReadOnly = obj.readOnly;
            var vDisabled = obj.disabled;
            //处理undefined值情况 
            vReadOnly = (vReadOnly == undefined) ? false : vReadOnly;
            vDisabled = (vDisabled == undefined) ? true : vDisabled;
            //当敲Backspace键时,事件源类型为密码或单行、多行文本的, 
            //并且readOnly属性为true或disabled属性为true的,则退格键失效 
            var flag1 = ev.keyCode == 8 && (t == "password" || t == "text" || t == "textarea") && (vReadOnly == true || vDisabled == true);
            //当敲Backspace键时,事件源类型非密码或单行、多行文本的,则退格键失效 
            var flag2 = ev.keyCode == 8 && t != "password" && t != "text" && t != "textarea";
            //判断 
            if (flag2 || flag1) return false;
        }
        //禁止后退键 作用于Firefox、Opera
        document.onkeypress = forbidBackSpace;
        //禁止后退键  作用于IE、Chrome
        document.onkeydown = forbidBackSpace;
</script>

使用方法:把上面的js程式碼放到之間就ok了

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!

相關推薦:

 如何使用Vue.js來配合ajax綁定資料

如何使用JS實作一個簡易數位時鐘

以上是JS如何停用瀏覽器的退格鍵的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn