Прототип Element.remove () не работает в IE - PullRequest
0 голосов
/ 19 мая 2010

У меня есть функция javascript, которая получает DIV по идентификатору и создает клон. Затем удаляет исходный DIV из DOM и вставляет клонированный объект. Все работает нормально, кроме IE, потому что исходный DIV никогда не удаляется ...

var loadingDiv = $(Sybil.conf.loadingDivId),
    loadingClone = loadingDiv.clone(true);

    console.log($$('.loadingImg'));
    loadingDiv.remove();
    //Insert the loading div on the page again
    elt.insert({after: loadingClone});
    [loadingClone].invoke(func);
    console.log($$('.loadingImg'));

У div также есть span внутри с классом «loadingImg», поэтому я просто использовал console.log, чтобы проверить, сколько там элементов. FF всегда печатает [span.loadingImg], но IE печатает [span.loadingImg,span.loadingImg] на втором console.log ...
Есть идеи о том, что может происходить? Спасибо

1 Ответ

0 голосов
/ 19 мая 2010

Решено .. на самом деле не имеет ничего общего с JavaScript У div, который я клонировал, было span внутри, но span не был правильно закрыт, из-за чего IE сходил с ума. Извлеченный урок: если вы знаете, что все правильно, а IE бесится, отправляйтесь на поиск недействительного HTML

...