firefox не умеет работать с соседями смотрите функцию
function on(th){ th.style.background='url(/images/site/a.gif)'; if (th.nextSibling == th.parentNode.lastChild){ th.nextSibling.innerHTML='<img src="/images/site/67.gif"/>' } else{ if (th.nextSibling.nextSibling.className == 'blsdio'){ th.nextSibling.innerHTML='<img src="/images/site/23.gif"/>' } else{ th.nextSibling.innerHTML='<img src="/images/site/33.gif"/>' } } if (th.previousSibling == th.parentNode.innerHTML){ th.previousSibling.innerHTML='<img src="/images/site/12.gif"/>' } else{ if (th.previousSibling.previousSibling.className == 'blsdio'){ th.previousSibling.innerHTML='<img src="/images/site/23.gif"/>' } else{ th.previousSibling.innerHTML='<img src="/images/site/22.gif"/>' } } } |
посмотрел... Нигле не нашёл проверки наличия nextSibling, а ведь потом к его свойствам обращаются... С previousSibling то же самое.
|
nextSibling есть previousSibling то же
Цитата:
|
th - это заголовок в таблице? Для работы с таблицами в DOM предусмотрены специальные методы. А еще nextSibling и previonsSibling выдают не только элементы, но и текстовые узлы, поэтому помимо существования узла, нужно проверять его nodeType.
|
надо просто дом генерить скриптом, тогда точно будешь знать, что там за сосед... :)
|
Цитата:
|
Цитата:
|
Цитата:
var div=document.createElement('div'); div.id='bla-bla-bla'; div.innerHTML='123'; var div2=document.createElement('div'); div2.id='bla-bla-bla2'; div2.innerHTML='1234'; document.body.appendChild(div); document.body.appendChild(div2); Тут точно известно что div и div2 - соседи и между ними ничего больше нет. |
Цитата:
|
Часовой пояс GMT +3, время: 14:54. |