Эквивалент «parentNode» в Internet Explorer - PullRequest
5 голосов
/ 27 июня 2010

Я написал некоторый код, который изменяет изображения на веб-странице. Работает с Firefox и Safari. Но попытки заставить его работать с Internet Explorer поставили меня в тупик. Что эквивалентно "parentNode" в проводнике? Или как заставить его работать?

images = document.getElementsByTagName('img')
parms = {};

for (a=0;a < images.length;a++){
    parent = images[a].parentNode; // <-- What to substitute for explorer?
    parms[a] = {};
    parms[a].bigsrc=parent.getAttribute("href");
    parms[a].w_o = images[a].width;
    parms[a].h_o = images[a].height;
    parms[a].IsBig = false;
    parms[a].loaded = false;
    images[a].border=0;
    parent.setAttribute("href","javascript:MakeBig('"+a+"')");
}

Ответы [ 3 ]

13 голосов
/ 30 июня 2010

Проблема заключается в назначении parentNode для переменной с именем «parent»В IE это зарезервированное слово, которое нарушает код.Измените имя переменной, и оно должно работать.

3 голосов
/ 28 июня 2010

parentNode отлично работает в IE (за исключением определенных случаев , скорее всего здесь неактуально).Ошибка почти наверняка в другом месте вашего кода.

0 голосов
/ 27 июня 2010

Ожидаете ли вы, что parentNode будет привязкой?Похоже, вы пытаетесь просто обернуть изображение в ссылку.Если это правильно, то альтернативой может быть добавление щелчка мыши к самому изображению и установка курсора руки.Это может создать видимость изображения как ссылки, не заботясь о том, что такое parentNode.

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