跟大家講解下有關什么是光標?input或textarea中關于光標的移動介紹,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說什么是光標?input或textarea中關于光標的移動介紹,小編也收集到了有關什么是光標?input或textarea中關于光標的移動介紹的相關資料,希望大家看到了會喜歡。
本篇文章給大家帶來的內容是關于什么是光標?input或textarea中關于光標的移動介紹,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。什么是光標頁面上輸入框中閃爍的光標其實是一個選區,也就是選區的左邊界和右邊界直接形成的選區。
非IE瀏覽器輸入框結點input=document.getElementById('#input')有二個屬性: selectionStart、selectionEnd,分別代表選區開始位置,選區結束位置。
通過修改這二個值就可以形成選區,寬度為0也就實現了光標的位置控制和獲取。
IE瀏覽器IE瀏覽器提供的API更加豐富:createTextRange()、 document.selection.createRange()、moveStart() 、moveEnd() 、move() 、collapse() 、text 、select()。
第一步:
var range = input.createTextRange(); //創建一個文本選區對象。第二步:一些操作
range.collapse(boolean);可以傳入一個布爾值作為參數,參數默認值為true,指示向左還是向右壓縮
range.moveStart(param1,param2);第一個參數可選值有 character、word、sentence、textedit. 比如character,即根據字符來偏移。第二個參數代表偏移的多少,正負表示方向。
range.moveEnd(param1,param2);和上面那個方法參數一樣,不同的是這是用來移動結束邊界
第三步:
range.select(); //將range包含的區域選中。需要注意的是:在調用range.select()方法之前,選區對象的內容并不會被添加選中效果
補充:
var range = document.selection.createRange();這個方法根據當前頁面中的選中文字區域來創建一個選區對象,這個選區對象與createTextRange方法的到選區對象的區別在于,它的選區范圍為頁面選中文字的區域,即它的左右邊界不再是默認的左最小右最大。
range.move(param1,param2);和moveStart參數一樣,對于移動光標比較友好。
相關推薦:
JS在TextArea光標位置插入文字并實現移動光標到文字末尾_javascript技巧
jQuery點擊input使光標移動到最后或指定位置
以上就是什么是光標?input或textarea中關于光標的移動介紹的詳細內容,更多請關注php中文網其它相關文章!
來源:php中文網