一、基本概念

https://developer.mozilla.org/en-US/docs/Web/API/Range

https://developer.mozilla.org/en-US/docs/Web/API/Selection

1.The Range interface represents a fragment of a document that can contain nodes and parts of text nodes.

A range can be created using the createRange() method of the Document object. Range objects can also be retrieved by using the getRangeAt() method of the Selection object or thecaretRangeAtPoint() method of the Document object.

There also is the Range() constructor available.

2.Range的selectionNode与selectionNodeContents方法

用法:range.selectNode(referenceNode);

var range = document.createRange();
var referenceNode = document.getElementsByTagName("div").item(0);

range.selectNode(referenceNode);

用法:range.selectNodeContents(referenceNode);
range = document.createRange();
referenceNode = document.getElementsByTagName("div")[0];
range.selectNodeContents(referenceNode);

3.A Selection object represents the range of text selected by the user or the current position of the caret. To obtain a Selection object for examination or modification, callwindow.getSelection().

Notes

String representation of a selection

Calling the Selection.toString() method returns the text contained in the selection, e.g.:

var selObj = window.getSelection();
window.alert(selObj);
Note that using a selection object as the argument to window.alert will call the object'stoString method.

Multiple ranges in a selection

A selection object represents the ranges that the user has selected. Typically, it holds only one range, accessed as follows:

var selObj = window.getSelection();
var range = selObj.getRangeAt(0);
selObj is a Selection object
range is a Range object

3.示例

(1)selection

(2)range

二、Range方法之setStartsetEnd等方法

1.setStart,setEnd

https://developer.mozilla.org/en-US/docs/Web/API/Range/setStart

https://developer.mozilla.org/en-US/docs/Web/API/Range/setEnd

2.setStartBefore,setEndAfter

转载于:https://www.cnblogs.com/shamgod/p/5084492.html

HTML5 编辑 API 之 Range 对象(一)相关推荐

  1. web前端学习(二)html学习笔记部分(3)--range对象

    1.2.8  html5编辑api之range对象(一) 1.2.8.1  Range 对象基本概念 Range 对象的基本概念,通过使用 Range 对象所提供的方法实现一个鼠标选取内容,通过点击按 ...

  2. javascript range 转为 html,javascript Range对象跨浏览器常用操作

    开发的功能主要涉及即时代码着色(CodeColoring)和语法提示(CodeHints)功能,稍后会总结功能开发中问题或提供源码. 以下是个人对Range对象的了解和常用操作的实例和总结: Rang ...

  3. 基于html5 File API文件操作

    文章来源:小青年原创  发布时间:2016-08-16  关键词:blob,File,FileReader,DataURI,URL  转载需标注本文原始地址: http://zhaomenghuan. ...

  4. html5在线api,HTML5 历史记录API

    HTML5 历史记录API HTML5历史记录API的使用方法,在线实例演示HTML5历史记录API如何使用.浏览器的兼容性.语法定义及它的属性值详细资料等. HTML5历史记录API使您可以通过Ja ...

  5. html录音并转为音频文件,HTML5音频API Web Audio

    此文介绍HTML5音频API的主要框架和工作流程,因为音频处理模块很多,因此只简单介绍几种音频处理模块,并通过例子来展示效果.后续会介绍利用HTML5音频API实现的项目,欢迎大家关注,敬请期待. H ...

  6. HTML5 Drop API

    转自:http://www.cnblogs.com/fsjohnhuang/p/3961066.html 一.前言    在HTML4的时代,各前端工程师为了实现拖拽功能可说是煞费苦心,初听HTML5 ...

  7. java canvas 缩放图片_详解如何用HTML5 Canvas API控制图片的缩放变换

    摘要:这篇HTML5栏目下的"详解如何用HTML5 Canvas API控制图片的缩放变换",介绍的技术点是"html5_canvas.canvas.Html5.控制图片 ...

  8. 开大你的音响,感受HTML5 Audio API带来的视听盛宴

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 话说HTML5的炫酷真的是让我爱不释手,即使在这个提到IE就伤心不完的年代.但话又说回来,追求卓越W ...

  9. HTML5 FileReader API 测试(一)

    2019独角兽企业重金招聘Python工程师标准>>> 参考文章 html5之FileReader接口 http://zhangyaochun.iteye.com/blog/1487 ...

最新文章

  1. 【ACM】杭电OJ 2050
  2. 【测试】视频流媒体服务器研究1
  3. 蓝桥杯 十进制数转八进制数
  4. 解决IDEA2020控制台乱码的方法(亲测)
  5. OC中数组排序的3种方法
  6. Sim300设计手册(转)
  7. 永磁无刷电机及其驱动技术_扫盲——直流无刷电机知识
  8. ArcGIS 10.5河流水系左斜体样式经典设置方法
  9. MFC关键技术-永久保存机制
  10. 快速恢复检测 恢复 故障服务器方法
  11. Linux下ar指令与静态库转动态库方法
  12. 华为欲全面超苹果;滴滴优步并购案被调查;Siri 不联网也能用 | 极客头条
  13. C#两个窗体间的相互通信(转)
  14. html5 保存 搜索历史,前端实现搜索记录功能也就是天猫app历史记录存储方便浏览 - 今天的代码你撸了嘛...
  15. 苹果怎么关闭自动更新系统_iPhone系统关闭自动更新教程
  16. 欧文计算机科学排名,2020年加州大学欧文分校排名TFE Times美国最佳计算机科学硕士专业排名第36...
  17. 乌班图20.08图形界面切换
  18. vue 仿B站下拉刷新上拉加载
  19. 在ubuntu上安装像金山词霸的词典。
  20. 开源方言分词转换软件Chinese dialect convert诞生了

热门文章

  1. 简介struct cmsghdr结构
  2. ShellExecuteA function
  3. 【Linux独家秘方】Linux 定时备份oracle库的数据
  4. HashSet、TreeSet、TreeMap实现原理
  5. 记录一次Socket的异常:InputStream.read()阻塞问题
  6. 二分匹配(匈牙利算法)
  7. python装饰器模块加载后的若干解释
  8. 【译】Why Decentralized AI Matters Part I: Economics and Enablers
  9. 农民斗地主——Binder fuzz安全研究
  10. Android MediaRecorder系统结构