Поиск элементов по тэгу - getElementsByTagName('table')
Здравствуйте, не могу понять почему не работает поиск по элементов по тегу: getElementsByTagName('table')
Все делаю правильно, но не работает, в чем причина ? <html> <head> </head> <body> <table width="400" valign="top" border="1"> <tr> <td>111</td> <td>222</td> </tr> <tr> <td>333</td> <td>444</td> </tr> </table> <br> <table width="400" valign="top" border="1"> <tr> <td>555</td> <td>666</td> </tr> <tr> <td>777</td> <td>888</td> </tr> </table> <br> <input type="button" value="displayNoNe" onclick="displayNoNe();"> <script type="text/javascript"> function displayNoNe() { var elems = document.getElementsByTagName('table')[0]; for (i=0; i < elems.length; i++) { if (elems[i].width == 400 && elems[i].vAlign == 'top') { elems[i].style.display = 'none'; break; } } } </script> </body> </html> |
<html> <head> </head> <body> <table width="400" valign="top" border="1"> <tr> <td>111</td> <td>222</td> </tr> <tr> <td>333</td> <td>444</td> </tr> </table> <br> <table width="400" valign="top" border="1"> <tr> <td>555</td> <td>666</td> </tr> <tr> <td>777</td> <td>888</td> </tr> </table> <br> <input type="button" value="displayNoNe" onclick="displayNoNe()"> <script type="text/javascript"> function displayNoNe() { var elems = document.getElementsByTagName('table'); for (i=0; i < elems.length; i++) { if (elems[i].width == 400 && elems[i].getAttribute('valign') == 'top') { elems[i].style.display = 'none'; break; } } } </script> </body> </html> |
Deff, спасибо =)
|
Deff, скажите почему подобный метод не работает с атрибутом for в IE ?
<html> <head> </head> <body> <label for="info">INFO</label> <script> var elems_one = document.getElementsByTagName('label'); for (i=0; i < elems_one.length; i++) { if (elems_one[i].getAttribute('for') == 'info') { elems_one[i].style.display = 'none'; break; } } </script> </body> </html> |
Разобрался:
Цитата:
Кроссбраузерных вариантов нету ? |
Работает в IE8-9, только что смотрел
|
Если без определения браузера выводить сразу 2 кода это не будет плохо сказываться на чем либо ?
В консоли посмотрел вроде нет ошибок <html> <head> </head> <body> <label for="info">INFO</label> <script> var elems_one = document.getElementsByTagName('label'); for (i=0; i < elems_one.length; i++) { if (elems_one[i].getAttribute('for') == 'info') { elems_one[i].style.display = 'none'; break; } } for (i=0; i < elems_one.length; i++) { if (elems_one[i].getAttribute('htmlFor') == 'info') { elems_one[i].style.display = 'none'; break; } } </script> </body> </html> |
<html> <head> </head> <body> <label for="info">INFO</label> <script> var elems_one = document.getElementsByTagName('label'); for (i=0; i < elems_one.length; i++) { if (elems_one[i].htmlFor === 'info') { elems_one[i].style.display = 'none'; break; } } </script> </body> </html> А так работает? |
danik.js, супер =) Спасибо работает и в IE и FF, а то я уже начал мудрить с кучей кода =)
|
Часовой пояс GMT +3, время: 03:10. |