#jquery #hyperlink
#jquery #гиперссылка
Вопрос:
У меня есть ссылка, которой я хотел бы управлять с помощью jQuery:
<a href="http://example.com/images/big_dog.jpg" >
<img src= "http://example.com/images/small_dog.jpg" style="position:absolute; left:198; top:67; width:170">
</a>
При нажатии на маленькую собачку появляется большая собачка.
href
Атрибут, большая собака, прост. Я могу просто сделать .attr('href')
. Но как мне получить доступ к <img>
части ссылки, то есть к маленькой собачке, на которую нажимают?
find()
Из <a>
кажется неправильным, поскольку img
фактически является частью <a>
элемента.
Комментарии:
1. .find () должен работать просто отлично, показать ваш ошибочный код.
Ответ №1:
img
Тег в примере является дочерним по отношению к a
тегу. Итак, чтобы получить значение атрибута src:
$(this).children("img").attr("src");
Ответ №2:
@imbondbaby прав в отношении дочерней части. Если вы хотите использовать find, но вам не удалось этого сделать, вот пример того, как это использовать:
$('#test').click(function(){
$(this).find('img').attr('src','http://portablegamingregion.com/wp-content/uploads/2013/03/Apple-and-Google-logo-Thumbnail1.png');
});
Пример: скрипка
Комментарии:
1. Спасибо вам обоим. Я думал, что это еще не все, что <img> было каким-то атрибутом <a> , например, href .
2. @Steve вы можете сразу запустить событие click в теге img вместо того, чтобы оборачивать его в тег привязки, если хотите. В этом случае вы избежите метода поиска и дочерних элементов в обновленном fiddle: jsfiddle.net/C8LtP/1 (если тег привязки не требуется и не имеет нескольких дочерних элементов)
3. Спасибо. На самом деле я создаю ссылки для канала на Fancybox, и он ожидает
<a>
с <img> внутри.