jQuery «Объект не поддерживает это свойство или метод» в Internet Explorer - PullRequest
11 голосов
/ 14 сентября 2009

Я использую jQuery для добавления динамического контента на сайт.

Я пытаюсь создать новый элемент DOM по требованию, используя следующий код:

container = $('<div id="myContainer"></div>');

Это отлично работает в Firefox и Safari, но Internet Explorer выдает ошибку. Ошибка IE: Object doesn't support this property or method

Я знаю, что jQuery загружается правильно, и пробовал синтаксис jQuery и $.

Есть идеи, что может быть причиной этого?

Ответы [ 3 ]

21 голосов
/ 23 июля 2010

Не знаю, может ли это помочь, но я исправил свою проблему. По сути, IE не хочет назначать объект jquery неопределенной переменной.

Итак, вместо этого я объявил локальную переменную.

До:

function foo() {
  bar = $('#bar');
}

После того, как:

function foo() {
  var bar = $('#bar');
}
10 голосов
/ 14 сентября 2009

Если вы хотите добавить элемент DOM, необходимо немного изменить код:

$('body').append('<div id="myContainer"></div>');
// body can be whatever containing element you want to hold myContainer
$('#myContainer').html('whatever you want inside of myContainer');
2 голосов
/ 27 августа 2012

У меня была похожая проблема. Internet Explorer выдает эту ошибку при попытке изменить глобальный символ. Это касается не только зарезервированных слов. Мой пример был:

function foo() {
    iframe = $("myDiv").append("<iframe></iframe>");
}

Это решает это:

function foo() {
    var iframe = $("myDiv").append("<iframe></iframe>");
}

Это тоже:

function foo() {
    myIframe = $("myDiv").append("<iframe></iframe>");
}

(но в любом случае первый стиль лучше)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...