站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
KindEditor/Range API
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
{{KindEditor导航}} *'''K.range(mixed)''' 创建或选取KRange对象,KRange是原生Range的封装,包含大部分W3C Range接口,此外还有包含KRange和原生Range之间的转换功能。 参数: #document|range mixed: document或原生range #element root: DOM根元素,在root范围内选择[[DOM]]元素 返回: KRange对象 示例: <pre> range = K.range(document); range = K.range(originalRange); </pre> *'''commonAncestor()''' 取得KRange的共同祖先。 参数: 无; 返回: Element 示例: <pre> var range = K.range(document); var element = range.commonAncestor(); </pre> *'''setStart(node , offset)''' 设置KRange的开始节点和位置。 参数: #Node node: 任意节点 #Int offset: 位置 返回: KRange 示例: <pre> var range = K.range(document); range.setStart(document.body, 1); </pre> *'''setEnd(node , offset)''' 设置KRange的结束节点和位置。 参数: #Node node: 任意节点 #Int offset: 位置 返回: KRange 示例: <pre> var range = K.range(document); range.setEnd(document.body, 2); </pre> *'''setStartBefore(node)''' 将Node的开始位置设置成Range的开始位置。 参数: Node node: 任意节点 返回: KRange 示例: <pre> var range = K.range(document); range.setStartBefore(K('div#id')[0]); </pre> *'''setStartAfter(node)''' 将Node的结束位置设置成Range的开始位置。 参数: Node node: 任意节点 返回: KRange 示例: <pre> var range = K.range(document); range.setStartAfter(K('div#id')[0]); </pre> *'''setEndBefore(node)''' 将Node的开始位置设置成Range的结束位置。 参数: Node node: 任意节点 返回: KRange 示例: <pre> var range = K.range(document); range.setEndBefore(K('div#id')[0]); </pre> *'''setEndAfter(node)''' 将Node的结束位置设置成Range的结束位置。 参数: Node node: 任意节点 返回: KRange 示例: <pre> var range = K.range(document); range.setEndAfter(K('div#id')[0]); </pre> *'''selectNode(node)''' 将Node的开始位置和结束位置分别设置成Range的开始位置和结束位置。 参数: Node node: 任意节点 返回: KRange 示例: <pre> var range = K.range(document); range.selectNode(K('div#id')[0]); </pre> *'''selectNodeContents(node)''' 将Node的子节点的开始位置和结束位置分别设置成Range的开始位置和结束位置。对于文本节点和无结束符的元素,相当于使用selectNode。 参数: Node node: 任意节点 返回: KRange 示例: <pre> var range = K.range(document); range.selectNodeContents(K('div#id')[0]); </pre> *'''collapse(toStart)''' 折叠KRange,当toStart为true时向前折叠,false时向后折叠。 参数: Boolean toStart: 折叠方向 返回: KRange 示例: <pre> var range = K.range(document); range.selectNodeContents(K('div#id')[0]); range.collapse(true); </pre> *'''compareBoundaryPoints(how , range)''' 根据how参数比较2个range的边界。 参数: #Int how: 位置信息,可设置K.START_TO_START、K.START_TO_END、K.END_TO_END、K.END_TO_START。 #Range range: 目标Range 返回: 当this range在目标range的左侧时返回-1,在目标range的右侧时返回1,相同时返回0。 how参数的方向规则: #K.START_TO_START:比较目标range的开始位置和this range的开始位置。 #K.START_TO_END:比较目标range的开始位置和this range的结束位置。 #K.END_TO_END:比较目标range的结束位置和this range的结束位置。 #K.END_TO_START:比较目标range的结束位置和this range的开始位置。 示例: <pre> var range1 = K.range(document); range1.selectNode(K('div#id')[0]); var range2 = K.range(document); range2.selectNode(K('div#id p')[0]); var cmp = range1.compareBoundaryPoints(K.START_TO_START, range2.get()); </pre> *'''cloneRange()''' 复制KRange。 参数: 无; 返回: KRange 示例: <pre> var range = K.range(document); range.selectNodeContents(K('div#id')[0]); var newRange = range.cloneRange(); </pre> *'''toString()''' 返回KRange的文本内容。 参数: 无; 返回: String 示例: <pre> var range = K.range(document); range.selectNodeContents(K('div#id')[0]); var text = range.toString(); </pre> *'''cloneContents()''' 复制并返回KRange的内容。 参数: 无; 返回: documentFragment 示例: <pre> var range = K.range(document); range.selectNodeContents(K('div#id')[0]); var fragment = range.cloneContents(); </pre> *'''deleteContents()''' 删除KRange的内容。 参数: 无; 返回: KRange 示例: <pre> var range = K.range(document); range.selectNodeContents(K('div#id')[0]); range.deleteContents(); </pre> *e'''xtractContents()''' 删除并返回KRange的内容。 参数: 无; 返回: documentFragment 示例: <pre> var range = K.range(document); range.selectNodeContents(K('div#id')[0]); var fragment = range.extractContents(); </pre> *'''insertNode(node)''' 将指定Node插入到KRange的开始位置。 参数: Node node: 任意Node或documentFragment 返回: KRange 示例: <pre> var range = K.range(document); range.selectNodeContents(K('#id1')[0]); range.insertNode(K('#id2')[0]); </pre> *'''surroundContents(node)''' 用指定Node围住KRange的内容。 参数: Element node: 任意节点 返回: KRange 示例: <pre> var range = K.range(document); range.selectNodeContents(K('#id1')[0]); range.surroundContents(K('#id2')[0]); </pre> *'''isControl()''' 判断当前KRange是否可选择的Contral Range。 参数: 无; 返回: Boolean 示例: <pre> var range = K.range(document); range.selectNodeContents(K('#id1')[0]); var bool = range.isControl(); </pre> *'''get([hasControlRange])''' 将KRange转换成原生Range并返回。 参数: Boolean hasControlRange: 是否包含Contral Range 返回: Range 示例: <pre> var range = K.range(document); range.selectNodeContents(K('#id1')[0]); var originalRange = range.get(); </pre> *'''html()''' 返回KRange内容的HTML。 参数: 无; 返回: HTML string 示例: <pre> var range = K.range(document); range.selectNodeContents(K('#id1')[0]); var html = range.html(); </pre> *'''down()''' 降低range的位置。 参数: 无; 返回: KRange 示例: <pre> // <p><strong><span>123</span>abc</strong>def</p> range.setStart(strong, 1); range.down(); console.log(range.startContainer, range.startOffset); // print "abc", 0 </pre> *'''up()''' 提高range的位置。 参数: 无; 返回: KRange 示例: <pre> // <p><strong><span>123</span>abc</strong>def</p> range.setStart("abc", 0); range.up(); console.log(range.startContainer, range.startOffset); // print strong, 1 </pre> *'''enlarge()''' 扩大边界。 参数: 无; 返回: KRange 示例: <pre> // <p><strong><span>123</span>abc</strong>def</p> range.setStart("123", 0); range.setEnd("abc", 3); range.enlarge(); console.log(range.startContainer, range.startOffset); // print p, 0 console.log(range.endContainer, range.endOffset); // print p, 1 </pre> *'''shrink()''' 缩小边界。 参数: 无; 返回: KRange 示例: <pre> // <p><strong><span>123</span>abc</strong></p> range.setStart(p, 0); range.setEnd(p, 1); range.shrink(); console.log(range.startContainer, range.startOffset); // print "123", 0 console.log(range.endContainer, range.endOffset); // print "abc", 3 </pre> *'''createBookmark([serialize])''' 创建bookmark。(插入临时节点标记位置) 参数: Boolean serialize: bookmark类型,默认值为false,true时bookmark包含临时节点的ID,false时bookmark包含临时节点的Element。 返回: bookmark 示例: <pre> bookmark = range.createBookmark(); console.log(bookmark); // print {start: startNode, end: endNode} bookmark = range.createBookmark(true); console.log(bookmark); // print {start: 'start_node_id', end: 'end_node_id'} </pre> *'''moveToBookmark(bookmark)''' 根据bookmark重新设置range。 参数: Object bookmark: 通过 createBookmark([serialize]) 得到的bookmark 返回: KRange 示例: <pre> bookmark = range.createBookmark(); // 在这里执行一些改变DOM的处理 // ... range.moveToBookmark(bookmark); </pre> ==参考来源== *http://www.kindsoft.net/doc.php [[category:KindEditor|R]] {{KindEditor使用手册导航}}
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)
本页使用的模板:
模板:KindEditor使用手册导航
(
编辑
)
模板:KindEditor导航
(
编辑
)