本文實例講述了JS清除選擇內(nèi)容的方法。分享給大家供大家參考。具體分析如下:
今天在做一個DIV拖動的效果,發(fā)現(xiàn)在拖動的時候會選中頁面中的文本,于是找了一下JS清除選擇的內(nèi)容的相關(guān)信息。
在得到的結(jié)果中發(fā)現(xiàn): 在谷歌、火狐、Opera瀏覽器中,window對象有g(shù)etSelection屬性,而在IE中沒有。IE中的document對象有selection屬性,因此清除頁面中選擇的內(nèi)容也就可以得到解決。
在谷歌、火狐、Opera瀏覽器中我們可以很容易的通過 window.getSelection().removeAllRanges() 清除選中的內(nèi)容,在IE中我們可以通過 document.selection.empty() 來清除選中的內(nèi)容。
于是我們可以這樣寫:
var clearSlct= "getSelection" in window ? function(){ window.getSelection().removeAllRanges();} : function(){ document.selection.empty();};"getSelection" in window 用于判斷window對象中是否含有g(shù)etSelection屬性,如果為true則說明當前瀏覽器支持getSelection,也即瀏覽器為非IE瀏覽器,反之亦然。
如果我們想要禁止用戶選中頁面中的內(nèi)容,我們可以這樣做:
//防止鼠標選中內(nèi)容(當鼠標松開時清除選中內(nèi)容)window.onmouseup=function(){ clearSlct();} //防止通過鍵盤選中內(nèi)容(當按鍵松開時清除選中內(nèi)容)window.onkeyup=function(){ clearSlct();} //使用jQuery的方法$(window).on("mouseup keyup",function(){ clearSlct();});希望本文所述對大家的javascript程序設(shè)計有所幫助。
新聞熱點
疑難解答