Class baidu.editor.dom.Range
baidu.editor.dom.Range Range类
| Method Attributes | Method Name and Description |
|---|---|
| <static> |
调整边界
|
| <static> |
给选区中的内容加上inline样式
|
| <static> |
克隆选中的内容到一个fragment里
|
| <static> |
克隆range
|
| <static> |
让选区闭合
|
| <static> |
创建书签
|
| <static> |
删除所选内容
|
| <static> |
调整边界到一个block元素上,或者移动到最大的位置
|
| <static> |
取出内容
|
| <static> |
得到一个自闭合的节点
|
| <static> |
找到startContainer和endContainer的公共祖先节点
|
| <static> |
在当前选区的开始位置前插入一个节点或者fragment
|
| <static> |
移动边界到书签,并删除书签
|
| <static> |
去掉inline样式
|
| <static> |
滚动到可视范围
|
| <static> |
根据range选中元素
|
| <static> |
选中指定节点
|
| <static> |
选中node下的所有节点
|
| <static> |
设置光标位置
|
| <static> |
设置range结束点的位置
|
| <static> |
将结束点位置设置到node后
|
| <static> |
将结束点位置设置到node前
|
| <static> |
设置range的开始位置
|
| <static> |
将开始位置设置到node后
|
| <static> |
将开始位置设置到node前
|
| <static> |
调整range的边界,“缩”到合适的位置
|
| <static> |
切割文本节点,将边界扩大到element
|
| <static> |
如果选区在文本的边界上,就扩展选区到文本的父节点上
|
Method Detail
<static>
{Range}
baidu.editor.dom.Range.adjustmentBoundary()
调整边界
xx[xxxxx] ==> xx[xxxxx] [xx]xxx ==> [xx]xxx
- Returns:
- {Range} Range对象
<static>
{Range}
baidu.editor.dom.Range.applyInlineStyle(tagName, attrObj)
给选区中的内容加上inline样式
- Parameters:
- {String} tagName
- 标签名称
- {Object} attrObj
- 属性
- Returns:
- {Range} Range对象
<static>
{Fragment}
baidu.editor.dom.Range.cloneContents()
克隆选中的内容到一个fragment里
- Returns:
- {Fragment} frag|null 返回选中内容的文本片段或者空
<static>
{Range}
baidu.editor.dom.Range.cloneRange()
克隆range
- Returns:
- {Range} 克隆的range对象
<static>
{Range}
baidu.editor.dom.Range.collapse(toStart)
让选区闭合
- Parameters:
- {Boolean} toStart
- 是否在选区开始位置闭合选区,true在开始位置闭合,false反之
- Returns:
- {Range} range对象
<static>
{Object}
baidu.editor.dom.Range.createBookmark(serialize, same)
创建书签
- Parameters:
- {Boolean} serialize
- true:为true则返回对象中用id来分别表示书签的开始和结束节点
- {Boolean} same
- true:是否采用唯一的id,false将会为每一个标签产生一个唯一的id
- Returns:
- {Object} bookmark对象
<static>
{Range}
baidu.editor.dom.Range.deleteContents()
删除所选内容
- Returns:
- {Range} 删除选中内容后的Range
<static>
{Range}
baidu.editor.dom.Range.enlarge()
调整边界到一个block元素上,或者移动到最大的位置
- Returns:
- {Range} Range对象
<static>
{String}
baidu.editor.dom.Range.extractContents()
取出内容
- Returns:
- {String} 获得Range选中的内容
<static>
{Node}
baidu.editor.dom.Range.getClosedNode()
得到一个自闭合的节点
,
- Returns:
- {Node} 闭合节点
<static>
{Node}
baidu.editor.dom.Range.getCommonAncestor(includeSelf, ignoreTextNode)
找到startContainer和endContainer的公共祖先节点
- Parameters:
- {Boolean} includeSelf
- 是否包含自身
- {Boolean} ignoreTextNode
- 是否忽略文本节点
- Returns:
- {Node} 祖先节点
<static>
{Range}
baidu.editor.dom.Range.insertNode(node)
在当前选区的开始位置前插入一个节点或者fragment
- Parameters:
- {Node/DocumentFragment} node
- 要插入的节点或fragment
- Returns:
- {Range} 返回range对象
<static>
{Range}
baidu.editor.dom.Range.moveToBookmark()
移动边界到书签,并删除书签
- Returns:
- {Range} Range对象
<static>
{Range}
baidu.editor.dom.Range.removeInlineStyle(tagName)
去掉inline样式
- Parameters:
- {String/Array} tagName
- 要去掉的标签名
- Returns:
- {Range} Range对象
<static>
{Range}
baidu.editor.dom.Range.scrollToView(win, offset)
滚动到可视范围
- Parameters:
- {Boolean} win
- 操作的window对象,若为空,则使用当前的window对象
- {Number} offset
- 滚动的偏移量
- Returns:
- {Range} Range对象
<static>
baidu.editor.dom.Range.select(notInsertFillData)
根据range选中元素
- Parameters:
- {Boolean} notInsertFillData
- true为不加占位符
<static>
{Range}
baidu.editor.dom.Range.selectNode(node)
选中指定节点
- Parameters:
- {Node} node
- 节点
- Returns:
- {Range} 返回Range
<static>
{Range}
baidu.editor.dom.Range.selectNodeContents(node)
选中node下的所有节点
- Parameters:
- {Element} node
- 要设置的节点
- Returns:
- {Range} 返回Range
<static>
{Range}
baidu.editor.dom.Range.setCursor(toEnd)
设置光标位置
- Parameters:
- {Boolean} toEnd
- true为闭合到选区的结束位置后,false为闭合到选区的开始位置前
- Returns:
- {Range} 返回range对象
<static>
{Range}
baidu.editor.dom.Range.setEnd(node, offset)
设置range结束点的位置
- Parameters:
- {Node} node
- range结束节点
- {Number} offset
- 偏移量
- Returns:
- {Range} 返回Range
<static>
{Range}
baidu.editor.dom.Range.setEndAfter(node)
将结束点位置设置到node后
- Parameters:
- {Node} node
- 节点
- Returns:
- {Range} 返回Range
<static>
{Range}
baidu.editor.dom.Range.setEndBefore(node)
将结束点位置设置到node前
- Parameters:
- {Node} node
- 节点
- Returns:
- {Range} 返回Range
<static>
{Range}
baidu.editor.dom.Range.setStart(node, offset)
设置range的开始位置
- Parameters:
- {Node} node
- range开始节点
- {Number} offset
- 偏移量
- Returns:
- {Range} 返回Range
<static>
{Range}
baidu.editor.dom.Range.setStartAfter(node)
将开始位置设置到node后
- Parameters:
- {Node} node
- 节点
- Returns:
- {Range} 返回Range
<static>
{Range}
baidu.editor.dom.Range.setStartBefore(node)
将开始位置设置到node前
- Parameters:
- {Node} node
- 节点
- Returns:
- {Range} 返回Range
<static>
baidu.editor.dom.Range.shrinkBoundary(ignoreEnd)
调整range的边界,“缩”到合适的位置
- Parameters:
- {Boolean} ignoreEnd
- 是否考虑前面的元素
<static>
{Range}
baidu.editor.dom.Range.trimBoundary(ignoreEnd)
切割文本节点,将边界扩大到element
|xxx startContainer = xxx; startOffset = 0 执行后 startContainer = ; startOffset = 0
xx|x startContainer = xxx; startOffset = 2 执行后 startContainer = ; startOffset = 1 因为将xxx切割成2个节点了
- Parameters:
- {Boolean} ignoreEnd
- 为真就不处理结束边界
- Returns:
- {Range} range对象
<static>
{Range}
baidu.editor.dom.Range.txtToElmBoundary()
如果选区在文本的边界上,就扩展选区到文本的父节点上
|xxx startContainer = xxx; startOffset = 0 执行后 startContainer = ; startOffset = 0
xxx| startContainer = xxx; startOffset = 3 执行后 startContainer = ; startOffset = 1
- Returns:
- {Range} range对象