TextRange的傳統用途是對用戶在Web " /> 免费一级a毛片在线播放视,亚洲图片国产日韩欧美,国产精品2022不卡在线观看

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

使用TextRange獲取輸入框中光標的位置的代碼

TextRange是用來表現HTML元素中文字的對象,雖然我們平時不太常用這個對象,可是它卻在IE4.0中就已提供了。不過TextRange提供的調用方法卻都比較晦澀,那么我們能拿它做些什么呢? 

    TextRange的傳統用途是對用戶在Web頁上用鼠標圈選的文字內容的操作,比如變化、刪除、新增等。但其經典的用途卻是,在Web頁面中查找文字(這個比較簡單)和獲取輸入框光標的位置。其中后者又有可以衍生出很多更有用的用途,比如:限制輸入的MaskTextBox,其核心技術點就是獲取輸入框的光標位置,然后使用正則表達式判斷輸入內容。還有我后面會介紹的"使用方向鍵在輸入框矩陣中自然的導航",核心技術點也是獲取輸入框中的光標位置。 

    獲取輸入框中的光標位置的整個代碼其實很短,只是這些對象和方法不太常用而已。 
<script language="Javascript"> 
function GetCursorPsn(txb) 

    var slct = document.selection; 
    var rng = slct.createRange(); 
    txb.select(); 
    rng.setEndPoint("StartToStart", slct.createRange()); 
    var psn = rng.text.length; 
    rng.collapse(false); 
    rng.select(); 
    return psn; 

</script> 

    要徹底的弄清楚TextRange的具體用法,需要了解與其相關的一些內容,請參考MSDN。 



    這里說一下使用這個GetCursorPsn()方法后,會給輸入框操作帶來的副作用。對于輸入框<input type="text" onkeydown="GetCursorPsn(this)">,它將不能再使用Shift+左右這兩個方向鍵來選擇文本;對于<textarea onkeydown="GetCursorPsn(this)"></textarea>,將不能再使用Shift+上下左右四個方向鍵來選擇文本。因為代碼在獲取了當前光標到文本的startPoint后,調用rng.collapse(false);會改變文本筐內文本的EditPoint。不過這個副作用基本不會給我們使用文本框帶來什么大的問題,所以基本不用太在意。

JavaScript技術使用TextRange獲取輸入框中光標的位置的代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 91在线观 | 久久精品视频8 | 欧美日韩国产色综合一二三四 | 在线观看国产区 | 天天做天天爱天天爽天天综合 | 欧美日韩国产在线观看一区二区三区 | 美女扒开内衣看个够网站 | 丁香视频在线 | 久久久五月天 | 中文字幕 国产精品 | 成人精品国产亚洲 | 色老板美国在线观看 | 91成年人| 涩涩色中文综合亚洲 | 四虎永久免费在线 | 欧美综合影院 | 麻豆国产精品免费视频 | 好吊日在线观看 | 两性午夜刺激性视频 | 性亚洲无删减 | 大象蕉国产情侣 | 亚洲欧洲日产国码 最新 | 日本三级成人中文字幕乱码 | 韩国三级日本三级美三级 | 看毛片视频| 国产二区精品视频 | 久久五月天婷婷 | 一区二区三区不卡在线 | 亚洲国产一区二区三区 | 午夜视频黄色 | 一区二三国产 | 国产精品12页| 伊人久久亚洲综合 | 91精品国产福利在线观看性色 | 永久免费精品影视网站 | 成人午夜视频一区二区国语 | 韩国美女丝袜一区二区 | 国产成人免费高清激情明星 | 手机在线看黄色 | 日本精品久久久久久久 | 久久男女 |