浏览器selection接口

            想实现这么一种功能,用不同的颜色来标记不同的语句成分,即先选择语句成分对应的颜色在对应的语句成分下面画直线,以达到练习英语语法的功能。比如说用红色来表示主语等。

        例如:

        其中I是主语,用红色标记,love是谓语,用绿色标记,you是宾语,用蓝色标记等等。我们知道,英语语法有主语、谓语、宾语、表语、系动词、状语、定语、补语、同位语、插入语等十种语句成分。这些功能都实现了,但是要有check的功能,也就是检查语法练习是否正确,所以要获取画线上的文本内容,因此也就要用到selection对象。

        现在主流的浏览器就是firefox内核,chrome内核,IE内核,所以要考虑到浏览器的兼容性问题。下面就是用到selection对象又考虑到兼容性问题。

function getSelectText(){
	if(window.getSelection) //Firefox Safari
	{
		return window.getSelection().toString();
	}
	else if(document.getSelection)  //Chrome 
	{
		return document.getSelection();
	}
	else if(document.selection)  //IE6 IE7 IE8
	{
		return document.selection.createRange().text;
	}
}
       selection对象是document对象的一个子对象,改对象对应于用户在页面中所选择的区域.selection对象的属性和方法定义如下:
    type属性: 该属性为只读属性.当被选择区域包含文本或其他内容时,type属性返回值为"Text";当被选择区域为空时,type属性返回值为"None".
    clear()方法: 该方法清除所选择区域的内容.
    empty()方法: 该方法使selection对象为空,即取消选择,并将页面滚动到最顶部.
    createRange()方法: 该方法基于用户当前所选择的区域创建TextRange对象,以对被选择区域进行进一步处理.

    selection 对象代表了当前激活选中区,即高亮文本块,或文档中用户可执行某些操作的其它元素。selection 对象的典型用途是作为用户的输入,以便识别正在对文档的哪一部分正在处理,或者作为某一操作的结果输出给用户。用户和脚本都可以创建选中区。用户创建选中区的办法是拖曳文档的一部分。脚本创建选中区的办法是在文本区域或类似对象上调用 select 方法。要获取当前选中区,请对 document 对象应用 selection关键字。要对选中区执行操作,请先用 createRange() 方法从选中区创建一个文本区域对象。document.selection.createRange() 根据当前文字选择返回 TextRange 对象,或根据控件选择返回 ControlRange 对象。配合 execCommand,在 HTML 编辑器中很有用,比如:文字加粗、斜体、复制、粘贴、创建超链接等。selection.type 选中内容的类型。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值