首頁 > web前端 > js教程 > 什麼是遊標? input或textarea中關於遊標的移動介紹

什麼是遊標? input或textarea中關於遊標的移動介紹

不言
發布: 2018-09-14 14:46:18
原創
3352 人瀏覽過

本篇文章帶給大家的內容是關於什麼是遊標? 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.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板