关于createTextRange和createRange的一些用法

来源:互联网 发布:中文文本相似度算法 编辑:程序博客网 时间:2024/04/29 15:16

转自哪忘了!!

 

<textarea cols="50" rows="15" name="code" class="xhtml">一、返回createTextRange的text和htmlText&lt;mce:script language="javascript"&gt;&lt;!--function test(){var rng=document.body.createTextRange();alert(rng.text)}function test1(){var rng=document.body.createTextRange();alert(rng.htmlText)}// --&gt;&lt;/mce:script&gt;&lt;input type="button" onclick="test()" value="text"&gt;&lt;input type="button" onclick="test1()" value="htmlText"&gt;二、获取指定文本框中的选中的文字:只响应第一个文本框&lt;input id="inp1" type="text" value="1234567890"&gt;&lt;input id="inp2" type="text" value="9876543210"&gt;&lt;input type="button" onclick="test()" value="确定"&gt;&lt;mce:script language="javascript"&gt;&lt;!--function test(){var o=document.getElementById("inp1")var r = document.selection.createRange();if(o.createTextRange().inRange(r))alert(r.text);}// --&gt;&lt;/mce:script&gt;三、页面文本倒序查找abababababababa&lt;input value="倒序查找a" onclick=myfindtext("a") type="button"&gt;&lt;mce:script language ='javascript'&gt;&lt;!--var rng = document.body.createTextRange();function myfindtext(text){rng.collapse(false);if(rng.findText(text,-1,1)){rng.select();rng.collapse(true);}else{alert("end");}}// --&gt;&lt;/mce:script&gt;四、聚焦控件后把光标放到最后&lt;mce:script language="javascript"&gt;&lt;!--function setFocus(){var obj = event.srcElement;var txt =obj.createTextRange();txt.moveStart('character',obj.value.length);txt.collapse(true);txt.select();}// --&gt;&lt;/mce:script&gt;&lt;input type="text" value="http://toto369.net" onfocus="setFocus()"&gt;五、得到文本框内光标位置&lt;mce:script language="javascript"&gt;&lt;!--function getPos(obj){obj.focus();var s=document.selection.createRange();s.setEndPoint("StartToStart",obj.createTextRange())alert(s.text.length);}// --&gt;&lt;/mce:script&gt;&lt;input type="text" id="txt1" value="1234567890"&gt;&lt;input type="button" value="得到光标位置" onclick=getPos(txt1)&gt;六、控制input框内光标位置&lt;mce:script language="javascript"&gt;&lt;!--function setPos(num){text1.focus();var e =document.getElementById("text1");var r =e.createTextRange();r.moveStart('character',num);r.collapse(true);r.select();}// --&gt;&lt;/mce:script&gt;&lt;input type="text" id="text1" value="1234567890"&gt;&lt;select onchange="setPos(this.selectedIndex)"&gt;&lt;option value="0"&gt;0&lt;/option&gt;&lt;option value="1"&gt;1&lt;/option&gt;&lt;option value="2"&gt;2&lt;/option&gt;&lt;option value="3"&gt;3&lt;/option&gt;&lt;option value="4"&gt;4&lt;/option&gt;&lt;option value="5"&gt;5&lt;/option&gt;&lt;option value="6"&gt;6&lt;/option&gt;&lt;option value="7"&gt;7&lt;/option&gt;&lt;/select&gt;七、选中文本框中的一段文字&lt;mce:script language=javascript&gt;&lt;!--function sel(obj,num){var rng=obj.createTextRange()var sel = rng.duplicate();sel.moveStart("character", num);sel.setEndPoint("EndToStart", rng);sel.select();}// --&gt;&lt;/mce:script&gt;&lt;input type="text" id="text1" value="1234567890"&gt;&lt;select onchange="sel(text1,this.value)"&gt;&lt;option value="0"&gt;0&lt;/option&gt;&lt;option value="1"&gt;1&lt;/option&gt;&lt;option value="2"&gt;2&lt;/option&gt;&lt;option value="3"&gt;3&lt;/option&gt;&lt;option value="4"&gt;4&lt;/option&gt;&lt;option value="5"&gt;5&lt;/option&gt;&lt;option value="6"&gt;6&lt;/option&gt;&lt;option value="7"&gt;7&lt;/option&gt;&lt;/select&gt;八、控制文本框内光标的移动&lt;input type="button" value="&lt;" onclick=go(-1)&gt;&lt;input id="demo" value="这里是文字"&gt;&lt;input type="button" value="&gt;" onclick=go(1)&gt;&lt;mce:script language="javascript"&gt;&lt;!--function go(n){demo.focus();with(document.selection.createRange()){moveStart("character",n);collapse();select();}}// --&gt;&lt;/mce:script&gt;九、取光标位置&lt;body&gt;&lt;div id=box&gt;点击textarea&lt;/div&gt; &lt;mce:script type="text/javascript"&gt;&lt;!--function doit(){ var rng = event.srcElement.createTextRange(); rng.moveToPoint(event.x,event.y); rng.moveEnd("character",event.srcElement.value.length) box.innerText = "光标位置:" + (event.srcElement.value.length - rng.text.length)}// --&gt;&lt;/mce:script&gt;&lt;textarea onclick=doit() rows="6" cols="33"&gt;sdfsdfsdfsdfsdfsdfsdf</textarea>

原创粉丝点击