`
arlwei
  • 浏览: 5894 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

IE支持的JS的TextRange和selection对象

阅读更多

TextRange对象仅仅IE浏览器支持,Chrome和FF都不支持。

利用TextRange对象,我们可以实现一些与文本有关的任务。比如说,定位,查找。

可以利用createTextRange()方法为input、textarea、body等创建TextRange。例如: var tr = document.body.createTextRange();

TextRange主要的方法有:

1、move相关的:moveStart("UNIT"[,count]);moveEnd("UNIT"[,count]);move("UNIT"[,count]);

moveStart();默认开始为TextRange对象的第一个字符

moveEnd();默认开始为TextRange对象的最后一个字符

它们配合起来可以选中特定的区域。

move();可以将光标移动到TextRange的某一位置。

UNIT取值范围为CHARACTER(字符)、WORD(词)、SENTENCE(段落)、textedit。

[,count]可正可负,代表相对于当前位置的偏移量。

2、选择查找相关:

select();选择moveStart();和moveEnd();之间的内容

collapse(boolean b);重叠插入点。true代表从开始处重合,反之则结尾处重合。

findText("search string"[,search scope,flags]);search scope指的是搜索的范围,值越大,范围越大,若值为负,则从反向搜索。flags代表是否大小写敏感。2代表匹配整个单词,4代表大小写敏感。

 

 

document.selection只有IE支持,window.getSelection()也只有FireFox和Safari支持,都不是标准语法。selection 对象代表了当前激活选中区,即高亮文本块,或文档中用户可执行某些操作的其它元素。selection 对象的典型用途是作为用户的输入,以便识别正在对文档的哪一部分正在处理,或者作为某一操作的结果输出给用户。

 

 

 

光标定位至起始位置

 

function locatePoint(){ 
var aCtrl = document.getElementById("txtContent"); 
if (aCtrl.setSelectionRange) { 
setTimeout(function() { 
aCtrl.setSelectionRange(0, 0); //将光标定位在textarea的开头,需要定位到其他位置的请自行修改 
aCtrl.focus(); 
}, 0); 
}else if (aCtrl.createTextRange) { 
var textArea=document.getElementById("txtContent"); 
var tempText=textArea.createTextRange(); 
tempText.moveEnd("character",0-tempText.text.length); 
tempText.select(); 
} 
} 
 

这段代码来自:http://www.jb51.net/article/26527.htm

 

其他相关资料:http://w3help.org/zh-cn/causes/SD9031

     http://blog.csdn.net/wayne23/article/details/1248925

     http://blog.163.com/wr_asdf/blog/static/42930451200911252735453/

分享到:
评论

相关推荐

    TextRange对象和selection对象实例

    IE提供了Selection对象和TextRange对象用于实现对被选择内容进行修改以及在指定区域中进行查找.

    JavaScript中textRange对象使用方法小结

    TextRange对象是动态HTML(DHTML)的高级特性,使用它可以...boundingLeft 获取绑定TextRange 对象的矩形左边缘和包含TextRange对象的左侧之间的距离 offsetLeft 获取对象相对于版面或由offsetParent属性指定的父坐标的计

    处理文本部分内容的TextRange对象应用实例

    因用户要求方与TextRange对象结缘,用于处理JavaScript对象文本部分内容的一个对象。 TextRange是用来表现HTML元素中文字的对象,虽然我们平时不太常用这个对象,可是它却在IE4.0中就已提供了。不过TextRange提供的...

    javascript Range对象跨浏览器常用操作第1/2页

    开发的功能主要涉及即时... dom标准Range对象 http://www.w3school.com.cn/xmldom/dom_range.asp 在ie中使用TextRange对象 http://www.hbcms.com/main/dhtml/objects/obj_textrange.html range对象常用的建立方法 在开

    使用TextRange获取输入框中光标的位置的代码

    TextRange是用来表现HTML元素中文字的对象,虽然我们平时不太常用这个对象,可是它却在IE4.0中就已提供了。不过TextRange提供的调用方法却都比较晦涩,那么我们能拿它做些什么呢? TextRange的传统用途是对用户在...

    Using the TextRange Object

    Most users will only want to use the innerText/innerHTML and outerText/outerHTML properties and ... The TextRange object can be used to: Locate the text for a given element

    使用TextRange获取输入框中光标的位

    TextRange是用来表现HTML元素中文字的对象,虽然我们平时不太常用这个对象,可是它却在IE4.0中就已提供了。不过TextRange提供的调用方法却都比较晦涩,那么我们能拿它做些什么呢? TextRange的传统用途是对用户在...

    javascript中获取选中对象的类型

    在Javascript中 利用 document.selection 可以创建 textRange。 但其实不是什么时候都可以创建的。 我们可以利用 document.selection.type 来判断当前选中的是文本还是对象。 document.selection.type 返回...

    教学演示-UBB,剪贴板,textRange及其他

    如何用js与剪贴板交互,如何使用textRange对象,如何使用自定义的快捷键操作,如何自动随窗口大小调整页面内容尺寸,正则表达式的使用等等 请仔细阅读代码,有问题请提问,目前代码开发完成度80%,IE only ...

    通过JavaScript脚本复制网页上的一个表格

    在Msdn中发现只有Body、TextArea等对象支持createTextRange()方法,继续在msdn中仔细查阅了一下,createTextRange()返回的是一个 TextRange 对象,继续查阅 TextRange 对象,发现其有很多方法,先试了试findText...

    Visual Basic 6编程技术大全 中译本扫描版带书签 2/2

    19.3.3 TextRange对象739 19.3.4表格对象741 19.4 DHTMLPage设计器742 19.4.1 DHTMLPage设计器742 19.4.2 DHTML元素编程744 19.4.3 DHTML应用程序748 19.5远程数据服务758 19.5.1 DHTML数据绑定758 19.5.2使用RDS...

    Visual Basic 6编程技术大全 中译本扫描版带书签 1/2

    19.3.3 TextRange对象739 19.3.4表格对象741 19.4 DHTMLPage设计器742 19.4.1 DHTMLPage设计器742 19.4.2 DHTML元素编程744 19.4.3 DHTML应用程序748 19.5远程数据服务758 19.5.1 DHTML数据绑定758 19.5.2使用RDS...

    js TextArea的选中区域处理

    非IE浏览器,如,firefox,chrome,支持 selectionStart 获取选中区域的起点,而IE浏览器不支持该属性,需要间接通过TextRange来获得,利用TextRange对象的compareEndPoints方法来进行起点的比较可以实现。...

    JS获取及设置TextArea或input文本框选择文本位置的方法

    本文实例讲述了JS获取及设置TextArea或input文本框选择文本位置的方法。... else if ( document.selection ) { // IE range = document.selection.createRange() if ( range == null ) return el.val

    javascript实现简单查找与替换的方法

    本文实例讲述了javascript实现简单查找与替换的方法。分享给大家供大家参考。具体实现方法如下: <html> <head> ... // 创建TextRange对象,指定为整个body区域 var myText = document.bo

    js正文内容高亮效果的实现方法

    代码如下://高亮显示搜索到的关键字function HeightLight(Keyword){ //文本选择器 var TextRange; //是否找到 var Found=false; //找到的次数 var Count = 0; TextRange = document.body.createTextRange();...

Global site tag (gtag.js) - Google Analytics