html输入框选中没有,光标_input输入框的光标操作,以及选中方式-textRange.select()方法讲解...

对于textRange,selection对象平时使用较少,而且文档介绍比较晦涩,令人望而却步。所以我觉得学习range对象的功能,最好以实际应用为例子,逐步学其功能。range是一个区域范围对象,可以操作用户选区,就是用户用鼠标选中的内容,也可以操作光标的位置。这些东西我刚开始接触的时候,从网上翻了不少文档,也看过一些大神的博客的讲解,总感觉,他们的讲解介绍要么是纯粹的API罗列,或者就是空中楼...
摘要由CSDN通过智能技术生成

对于textRange,selection对象平时使用较少,而且文档介绍比较晦涩,令人望而却步。所以我觉得学习range对象的功能,最好以实际应用为例子,逐步学其功能。range是一个区域范围对象,可以操作用户选区,就是用户用鼠标选中的内容,也可以操作光标的位置。这些东西我刚开始接触的时候,从网上翻了不少文档,也看过一些大神的博客的讲解,总感觉,他们的讲解介绍要么是纯粹的API罗列,或者就是空中楼阁式的讲解,确实也有一些不错的讲解,张鑫旭的博文中对range和selection的讲解就比较亲民易懂。重新创造轮子确实也没有什么价值。我是从实用的角度,实现实际需求的功能为目的来从小白级别的探讨range对象。

今天我们就以实现文本框中的光标位置设置为目标。在账号密码的输入中,如果输入的账号密码错误,我们为了提高用户体验,希望让错误的地方focus获取焦点。而我们只调用focus()方法的话,input获取焦点但是光标是在最前面,这时如果用户要删除内容,还需要点击让光标移动到文本的末尾。为了让用户省去这步操作就需要在focus事件中把光标移动到最后面。

dee6442e426f1dc076819a494f763507.png

上图是直接focus的结果图。

要操作光标的位置我们都有耳闻,textRange对象,没错,你答对了一半。因为textRange是IE私有对象,尽管Opera浏览器也有支持,但毕竟是模仿秀,不真着。

那么我们怎么获取textRange对象呢?查看IE的DHTML文档。

0158282d41c4e2f191cde059efa058c9.png

从文档中我们得到了creatTextRange方法可以创建textRange对象。

注:有一些问题我们可以百度或者google获得答案,但那只是获取的一种解决方法,你若想彻底理解某个东西,深入掌握就要从最基础的地方开始找答案,我们百度出来知道input有这么个方法,你就应该想,这些人是怎么知道有这个方法的,为了解决这个疑惑,你就需要去看IE的文档,文档上有这个东西,原来是从文档上知道的。得鱼不如得渔,授人以鱼不如授人以渔。所以我觉得学习方法很重要,即使是有老师࿰

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值