本文實例講述了JS實現選定指定HTML元素對象中指定文本內容功能。分享給大家供大家參考,具體如下:
該功能用處多多,可以靈活運用之!主要函數如下:
//選中文本中指定部分function selectSomeText(obj,start,end){ if(document.selection){ if(obj.tagName=='TEXTAREA'){ var i=obj.value.indexOf("/r",0); while(i!=-1&&i<end){ end--; if(i<start){ start--; } i=obj.value.indexOf("/r",i+1); } } var range=obj.createTextRange(); range.collapse(true); range.moveStart('character',start); if(end!=undefined){ range.moveEnd('character',end-start); } range.select(); }else{ obj.selectionStart=start; var sel_end=end==undefined?start:end; obj.selectionEnd=Math.min(sel_end,obj.value.length); obj.focus(); }}然后調用之,For example:
selectSomeText(document.getElementById('jiu_textarea'),2,8)//選中ID為jiu_textarea內的第2至8個字!完整示例如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>Test</title><script type="text/javascript" language="javascript" >//選中文本中指定部分function selectSomeText(obj,start,end){ if(document.selection){ if(obj.tagName=='TEXTAREA'){ var i=obj.value.indexOf("/r",0); while(i!=-1&&i<end){ end--; if(i<start){ start--; } i=obj.value.indexOf("/r",i+1); } } var range=obj.createTextRange(); range.collapse(true); range.moveStart('character',start); if(end!=undefined){ range.moveEnd('character',end-start); } range.select(); }else{ obj.selectionStart=start; var sel_end=end==undefined?start:end; obj.selectionEnd=Math.min(sel_end,obj.value.length); obj.focus(); }}</script></head><body><textarea name="jiu_textarea" rows="15" id="jiu_textarea">歡迎訪問武林網//m.survivalescaperooms.com</textarea><script type="text/javascript" language="javascript" >selectSomeText(document.getElementById('jiu_textarea'),2,8)//選中ID為jiu_textarea內的第2至8個字!</script></body></html>運行效果圖如下:

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript事件相關操作與技巧大全》、《JavaScript操作DOM技巧總結》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。
新聞熱點
疑難解答