html中,用兩種方式來表示文字框: input 單行文字、textarea 多行文字
那麼在文字中存在哪些事件尼?
1 select 都支援 但是其觸發的時機不一樣
ie9+ 、safair 、opera、chorme、firefox
當使用者選擇檔案時,滑鼠鬆開時觸發
ie8以及其下
當使用者選擇文字時,就會觸發
1 window.onload = function() , false
)6 } else
);10
}11 }
2 取得選擇的文字
h5 新增的兩個屬性,
selectionstart、selectionendie9+ 、safair 、opera、chorme、firefox 支援這兩個屬性
ie8不支援這兩個屬性,但是提供 document.selection 物件, 其中儲存著使用者在整個文件範圍內選擇的文字資訊;也就是說,無法確定使用者選擇的是頁面中那個部位的文字。不過,在於select事件一起使用時候,可以假設是用虎選擇了文字框中的文字,因此觸發該事件。要取得選擇的文字,首先必須建立乙個範圍,然後再將文字從其中取出來,如下。
functiongetselectedtext(textbox)
else
if(document.selection)
}
3 選擇部分內容
setselectionrange(start,end) 接收兩個引數,並且不包括 end指定的內容
ie9+ 、safair 、opera、chorme、firefox
document.forms[0].elements[0].setselectionrange(0,3); //123document.forms[0].elements[0].setselectionrange(0,2);//
12 document.forms[0].elements[0].setselectionrange(0,1);//
1
ie8以及其低版本中不支援 setselctionrange方法,但是要想選擇部分內容步驟如下:
1 createtextrange 建立乙個範圍,並將其放在恰當的位置
2 再通過 movestart() 和 moveend()這兩個範圍方法將範圍移動到位。
3 呼叫movestart、moveend之前必須使用 collapse()將範圍摺疊到文字框的開始位置。(此時在movestart()將範圍的起始點和終點移到了相同的位置 )
4 接著再給moveend()傳入要選擇的字元總數即可。 最後一步就是使用範圍的select()選擇文字
movstart()@param unit character、 word 、 sentence、textedit
@param [count]
@returnmoveend()
var textbox = document.forms[0].elements[0]; //who are you miss wvar range =textbox.createtextrange();
range.collapse(
true
); range.movestart("word",0); //
character 字元 || word 單詞 || sentence 段落
range.moveend("word",3); // who are you
range.select();
當為 textedit 插入點(選擇開始位置從結尾開始)移動到整個文字範圍的結束處
var textbox = document.forms[0].elements[0]; //who are you miss w
var range =textbox.createtextrange();range.collapse(
true
); range.movestart("textedit"); //
character 字元 || word 單詞 || sentence 段落
range.movestart("character",-10); // miss wang
range.select();
綜合上面的方式可以給出跨瀏覽器的方式:
functionselecttext(textbox,start,end)
else
}@param
@param@param [count]
@return
下面通過乙個例項來驗證一下:
不管哪種情況下,必須是獲得焦點之後執行
functionselecttext(textbox,start,end)
else
}selecttext(textbox,0,10); //who are yo
文字框獲得焦點事件
input 文字框內容改變,我們可以使用onchange或者onblur來進行判斷,但是onchange是在文字內容改變,然後失去焦點的時候發生,onblur是在失去焦點時候發生,不會判斷文字內容是否改變。按鍵彈起時觸發事件 mytext keyup function 按鍵按下時觸發事件 先響應事件...
文字框指令碼 過濾輸入
過濾輸入經常應用的場合是,限定文字框的輸入特定資料,或者輸入特定格式的資料。當輸入那離不開鍵盤,當然也不開這三個事件 keydown keypress keyup 先來看看這些事件的順序 textbox.addeventlistener keyup function false textbox.ad...
文字框的oninput事件以及
截選於網上 1 onchange事件與onpropertychange事件的區別 onchange事件在內容改變 兩次內容有可能還是相等的 且失去焦點時觸發 onpropertychange事件卻是實時觸發,即每增加或刪除乙個字元就會觸發,通過js改變也會觸發該事件,但是該事件ie專有。2 onin...