我正在搜索跨浏览器解决方案(Chrome,FF,Opera> 10,IE> = 8)以解决以下问题:
有一些HTML代码:
<div>
<div id="one">
<p id="red">red</p>
<p id="green">green</p>
</div>
<div id="two">
<p id="blue">blue</p>
<p id="black">black</p>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
并且用户使用鼠标文本从'een'(在#green节点中)选择到'blu'(在#blue节点中).如何检查#blue是否在内部选择(无论是全部还是部分选择)并且#red和#black不在选择范围内.简单的API看起来像这样:
Selection.isElementSelected(document.getElementById('black'));
Run Code Online (Sandbox Code Playgroud)
我试过使用DOMSelection和Ranges,但问题是我需要检查嵌套结构中的元素.在Chrome中,我可以使用Range.intersectsNode(),但这是唯一支持此方法的浏览器.
有什么建议?
javascript ×1