Rangy containsNodeContents test.
by lddubeau
HTML
<script src="https://rangy.googlecode.com/svn/trunk/currentrelease/rangy-core.js"></script>
<p id="play">Blah</p>
<button id="a">A</button>
<button id="b">B</button>
<button id="c">C</button>
<p id="log"></p>
JavaScript
$(function () {
rangy.init();
var range = rangy.createRange();
var $log = $("#log");
var $play = $("#play");
function log(x) {
$log.append("" + x);
$log.append("<br/>");
}
$("#a").click(function () {
var range = rangy.getSelection().getRangeAt(0);
log(range.containsNodeContents($play.get(0)));
log(rangy.dom.inspectNode(range.startContainer));
log(rangy.dom.inspectNode(range.endContainer));
});
$("#b").click(function () {
var range = rangy.createRange();
range.setStart($play.get(0), 0);
range.setEnd($play.get(0), 1);
log(range.containsNodeContents($play.get(0)));
});
$("#c").click(function () {
var range = rangy.createRange();
range.setStart($play.get(0).childNodes[0], 0);
range.setEnd($play.get(0).childNodes[0], 4);
log(range.containsNodeContents($play.get(0)));
});
});