计算所选内容中的节点数
count no of nodes in a selection
如果我在浏览器上选择大约 3 或 4 行,那么我希望在浏览器上选择的编号,即计算选定的<span>
我有一个示例.html其中包括以下代码,
<div id="p">
<p id="p1">
<span>wefwef wefwefsdfc fcsdcs wefwscsdc qwefwcsdc </span>
<span>wefwec acvsdc wecfsdc <br />asdcsdc sdcdc wedwed</span>
<span> wefwec acvsdc wecfsdc asdcsdc sdcdc</span>
<span> wefwec acvsdc wecfsdc<br /> asdcsdc sdcdc</span>
<span>wefwec acvsdc wecfsdc asdcsdc sdcdc</span>
</p>
<p>
<span>wefwef wefwefsdfc fcsdcs wefwscsdc qwefwcsdc </span>
<span>wefwec acvsdc wecfsdc <br />asdcsdc sdcdc wedwed</span>
<span> wefwec acvsdc wecfsdc asdcsdc sdcdc</span>
<span> wefwec acvsdc wecfsdc<br /> asdcsdc sdcdc</span>
</p>
</div>
我有以下问题:
- 如何计算选定的
<span>
? - 我如何获得选定的
<span>
?
您可以使用类似于以下内容的代码获取所选内容的 HTML:
function getSelectedHTML () {
var result = '';
var range;
if (document.selection && document.selection.createRange) {
range = document.selection.createRange();
result = range.htmlText;
}
else if (window.getSelection) {
var selection = window.getSelection();
if (selection.rangeCount > 0) {
range = selection.getRangeAt(0);
var clonedSelection = range.cloneContents();
var div = document.createElement('div');
div.appendChild(clonedSelection);
result = div.innerHTML;
}
}
return result;
}
之后,就是解析选择的问题。 一种方法是使用jQuery:
var count = $('span', $(getSelectedHTML())).length;
相关文章:
- 节点导出返回一个空对象
- 可以前端maven插件使用节点,npm已经安装
- 在jstree中,如何将指定的节点集中到大型树上
- 节点Js:How to catch a“;没有这样的文件或目录“;读取线模块出错
- 如何从模块链中调用函数.导出到节点中
- 节点是否需要模块传递带有方括号的arg?这是个错误吗
- d3基于用户选择动态更新节点
- 有条件更新d3.js力图中节点的最佳方法
- 如何处理node.js节点mongodb中的连接和查询队列
- 将DOM节点值与字符串Javascript进行比较
- 节点fs.stat名称未定义
- 无法安装节点sass相关性
- 节点协同与生成器和Promise并行流量控制
- 节点.js将变量显示为 HTML
- 将节点数据分配给另一个变量jstree
- 如何在动态创建的节点上绑定函数
- 承诺在非节点式回调上使用Bluebird
- 通过从节点父级获取所有子级对节点进行排序(获取子级数组)
- 茉莉花节点测试;t正在运行
- 节点webkit应用程序与终端通话