FineAdmin.Web/Content/lib/wangEditor/src/js/selection/index.js
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/*
selection range API
*/
import $ from '../util/dom-core.js'
import { UA } from '../util/util.js'
// 构造函数
function API(editor) {
this.editor = editor
this._currentRange = null
}
// 修改原型
API.prototype = {
constructor: API,
// 获取 range 对象
getRange: function () {
return this._currentRange
},
// 保存选区
saveRange: function (_range) {
if (_range) {
// 保存已有选区
this._currentRange = _range
return
}
// 获取当前的选区
const selection = window.getSelection()
if (selection.rangeCount === 0) {
return
}
const range = selection.getRangeAt(0)
// 判断选区内容是否在编辑内容之内
const $containerElem = this.getSelectionContainerElem(range)
if (!$containerElem) {
return
}
// 判断选区内容是否在不可编辑区域之内
if ($containerElem.attr('contenteditable') === 'false' || $containerElem.parentUntil('[contenteditable=false]')) {
return
}
const editor = this.editor
const $textElem = editor.$textElem
if ($textElem.isContain($containerElem)) {
// 是编辑内容之内的
this._currentRange = range
}
},
// 折叠选区
collapseRange: function (toStart) {
if (toStart == null) {
// 默认为 false
后面还有 132 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
