Кто-либо может сказать мне точно, что Объект не поддерживает это свойство или средства метода в IE для JS?

при перемещении через сеть и через stackoverflow.com я нашел много сообщений на форумах, и т.д. где это сообщение происходит в IE, но не в других браузерах. вещь, разрешения значительно различаются, и не ясно для меня, что лучший способ состоит в том, чтобы избежать этой проблемы.

Таким образом, мой вопрос, если кто-либо знает точно, specificly, что этот объект сообщения не поддерживает это свойство или метод

средство, причины, говорит...

благодарит справка. helle

5
задан Billy ONeal 8 June 2011 в 01:44
поделиться

3 ответа

Довольно часто реальная проблема, на которую указывает эта ошибка, заключается в том, что ваш код ожидает, что не будет null на самом деле null .

var thing = document.getElementById('thing');
var x = thing.getAttribute('x');

Если на странице нет элемента «вещь», переменная будет равна нулю, и вы получите сообщение об ошибке.

В общем, неплохо не задумываться о том, что IE пытается сообщить вам своими сообщениями об ошибках. Только представьте, что браузер издает глухой кряхтение, как плохо обученное животное.

8
ответ дан 13 December 2019 в 22:02
поделиться

Это означает, что объект не поддерживает метод, который вы пытаетесь вызвать.

function Foo() {

};

var something = new Foo();

something.fish(); // Error: because fish is not defined as a method.
2
ответ дан 13 December 2019 в 22:02
поделиться

Ну, после другого огромного поиска причин проблемы (например, в спецификации Microsoft JS ... где нет полной таблицы ошибок) я перехожу к тот же результат, что и @Pointy. наверняка @Matt тоже помог! IE реально ворчит, когда у него что-то не работает. Я пока не нашел точного описания ошибки.

и еще одно резюме: во многих случаях это вызвано тем, что объект JS имеет такое же имя, как DOM-Elements или DOM-Elements ID, потому что IE - в некоторых случаях - интерпретирует их как одинаковые. так что вы как бы перезаписываете объекты сверху. чтобы избежать этого, всегда используйте var [vaiablename] = [value]; синтаксис для инициализации переменной. ( var абсолютно необходим в IE. просматривая форумы, я обнаружил, что это помогает во многих случаях, но не универсальное средство.

с уважением, helle

0
ответ дан 13 December 2019 в 22:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: