2014-01-15 5 views
0

хранить следующие данные slection в массиве:Стойкие DOM ParentNode ссылка

var returnInfo = new Array; 
var selectionRange = window.getSelection().getRangeAt(0); 
returnInfo['CAC'] = selectionRange.commonAncestorContainer; 
returnInfo['startContainer'] = selectionRange.startContainer; 
returnInfo['endContainer'] = selectionRange.endContainer; 
returnInfo['startOffset'] = selectionRange.startOffset; 
returnInfo['endOffset'] = selectionRange.endOffset; 

При запуске модификации DOM, однако, изменения commonAncestorContainer.parentNode к нулю. Есть ли способ заморозить это значение? Я не изменяю родителей узла, просто его братьев и сестер, поэтому родитель всегда остается тем же.

ответ

1

Если commonAncestorContainer.parentNode is null это означает, что commonAncestorContainer не входит в DOM. Проверьте javascript-код для удаления commonAncestorContainer или замену в innerHTML родителей.

+0

Спасибо, что указал мне в правильном направлении. Оказывается, что изменение innerHTML самого commonAncestorContainer.parentNode также устанавливает свойство null. – NotABlueWhale

Смежные вопросы