function (/*DomNode*/ node, /*DomNode*/ parent) (view source)
var ret=[], retR=[];
varstop = parent;
var onode = node;
var pnode, n;
while(node != stop){var i = 0;
pnode = node.parentNode;
while((n=pnode.childNodes[i++])){if(n===node){
--i;
break;
}}if(i>=pnode.childNodes.length){
dojo.debug("Error finding index of a node in dijit.range.getIndex");
}
ret.unshift(i);
retR.unshift(i-pnode.childNodes.length);
node = pnode;
}//normalized() can not be called so often to prevent//invalidating selection/range, so we have to detect//here that any text nodes in a rowif(ret.length>0&& onode.nodeType==3){
n = onode.previousSibling;
while(n && n.nodeType==3){
ret[ret.length-1]--;
n = n.previousSibling;
}
n = onode.nextSibling;
while(n && n.nodeType==3){
retR[retR.length-1]++;
n = n.nextSibling;
}}// dojo.profile.end("dijit.range.getIndex");return{o: ret, r:retR};