Не работает getElementsByName
Что я делаю не так?(
<html> <head> <title> 111 </title> <script> window.onload = function() { var a = document.getElementById("JPG1") a.onmouseover = function() { document.getElementsByName('NameJPG').style.display="none"; } } </script> </head> <body> <img src="pictures/alk.jpg" id="JPG1"> <img src="pictures/Clinkz.jpg" id="JPG2" name="NameJPG"> <img src="pictures/husk.jpg"id="JPG3" name ="NameJPG"> </body> </html> |
Цитата:
Может слов displa y ??? И попробуй не через Name, а через Class вывести функцию |
Цитата:
|
Цитата:
<img src="pictures/husk.jpg"id="JPG3" name ="NameJPG"> Вот это: <img src="pictures/husk.jpg"id="JPG3" class="NameJPG"> И в функции замени document.getElementsByName на document.getElementsByClassname |
Мб так?
document.getElementsByName('NameJPG')[0] |
Цитата:
document.getElementsByName("NameJPG")[0].tagName; хз |
window.onload = function() { var a = document.getElementById("JPG1") a.onmouseover = function() { document.getElementsByName('NameJPG')[0].style.display = "none"; document.getElementsByName('NameJPG')[1].style.display = "none"; } } |
спасибо, понял. А можно как-то в одну строку использовать все элементы имеющие одинаковый id/class/name?
|
window.onload = function() { var a = document.getElementById("JPG1") a.onmouseover = function() { var imgs = document.getElementsByName('NameJPG'); for (var i = 0, len = imgs.length; i < len; i++) { imgs[i].style.display = "none"; } } } |
или так:
var imgs = document.querySelectorAll("[name=NameJPG]"); for (var i = 0, len = imgs.length; i < len; i++) { imgs[i].style.display = "none"; } |
а если подключить jQuery, то можно так:
$(function() { document.getElementById("JPG1").onmouseover = function() { $("[name=NameJPG]").each( function(n, item) { item.style.display = "none"; } ); } }); |
Keramet, ты издеваешься?
$(function() { $('#JPG1').on('mouseover', '[name=NameJPG]', function() { $(this).hide(); }); }); |
Decode,
молодец :write: согласен, твой вариант круче. а на что указывает this вот тут? $(this).hide(); |
Keramet,
<ul class="list"> <li class="item">1</li> <li class="item">2</li> <li class="item">3</li> <li class="item">4</li> <li class="item">5</li> </ul> <script src="https://code.jquery.com/jquery-2.1.4.js"></script> <script> $(function() { $('.list').on('mouseover', '.item', function() { $(this).hide(); console.log($(this)); }); }); </script> |
Decode,
понял, спс |
У меня в консоли выдало:
<ul class="list"> <li class="item">1</li> <li class="item">2</li> <li class="item">3</li> <li class="item">4</li> <li class="item">5</li> </ul> <script src="https://code.jquery.com/jquery-2.1.4.js"></script> <script> $(function() { $('.list').on('mouseover', '.item', function() { $(this).hide(); console.log($(this)); }); }); </script> |
Keramet, на <li>.
|
Часовой пояс GMT +3, время: 05:03. |