Я выполняю эти простые строки javascript в последнем, т.е. 11, просто для выбора всего содержимого div
Вот скриншот из ie11 dev tool
Как вы можете видеть, IE изменил меня, сказав: "не удалось завершить операцию из-за ошибки 800a025e".
Я не могу понять природу, источник проблемы и другие проблемы с переполнением стека, которые я прочитал, дают мне четкий ответ.
Это полный код моего личного расширения selectText jQuery
jQuery.fn.selectText = function(){
var doc = document;
var element = this[0];
// console.log(this, element);
if (typeof element == 'undefined') {
return;
}
if (doc.body.createTextRange) {
var range = document.body.createTextRange();
range.moveToElementText(element);
range.select();
} else if (window.getSelection) {
var selection = window.getSelection();
var range = document.createRange();
range.selectNodeContents(element);
selection.removeAllRanges();
selection.addRange(range);
}
};
Элемент в этом случае есть
[Object HTMLTableElement]
Изменить 1: с небольшим мод:
var range = document.body.createTextRange();
var retval = range.moveToElementText(element);
console.log (retval);
range.select();
Я могу сказать, что вы retval undefined. Этот код работает на ff без проблем, поэтому селектор элементов в порядке. Версия jQuery - 1.11