Поиск элементов по тэгу - 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, время: 13:09. |