HTML链接中取范围,HTML-选择范围-获取范围+起始节点+结束节点+距离

从我

previous question

为了选择特定的HTML文本,我已经完成了

this link

了解HTML字符串中的范围。

用于选择HTML页上的特定文本。我们需要遵循这些步骤。

假设HTML:

href="http://radar.oreilly.com/archives/2007/03/call_for_a_blog_1.html"

class="external">Call for a Blogger's Code of Conduct

Tim O'Reilly calls for a Blogger Code of Conduct. His proposals are:

  1. Take responsibility not just for your own words, but for the

    comments you allow on your blog.

  2. Label your tolerance level for abusive comments.
  3. Consider eliminating anonymous comments.

通过范围进行选择的Java脚本

var range = document.createRange(); // create range

var startPar = [the p node]; // starting parameter

var endLi = [the second li node]; // ending parameter

range.setStart(startPar,13); // distance from starting parameter.

range.setEnd(endLi,17); // distance from ending parameter

range.select(); // this statement will make selection

我想用倒转的方式来做这个。我的意思是,假设选择是由用户在浏览器(Safari)上完成的。我的问题是,我们如何得到起始节点(这里有“p节点”)和结束节点(这里有“第二个li节点”)以及范围(这里有13,17)?

var sel = window.getSelection();

if (sel.rangeCount < 1) {

return;

}

var range = sel.getRangeAt(0);

var startNode = range.startContainer, endNode = range.endContainer;

// Split the start and end container text nodes, if necessary

if (endNode.nodeType == 3) {

endNode.splitText(range.endOffset);

range.setEnd(endNode, endNode.length);

}

if (startNode.nodeType == 3) {

startNode = startNode.splitText(range.startOffset);

range.setStart(startNode, 0);

}

但是,如果选择的是第一段、第二段或第三段,或者选择的是第一段、第二段或第三段,或者选择的是第一段、第二段,或者什么,我还是很困惑。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值