Я пытаюсь получить значение href с помощью jQuery:
<html>
<head>
<title>Jquery Test</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("a").click(function(event) {
alert("As you can see, the link no longer took you to jquery.com");
var href = $('a').attr('href');
alert(href);
event.preventDefault();
});
});
</script>
</head>
<body>
<a href="http://jquery.com/">jQuery</a>
</body>
</html>
Но это не работает. Почему?
Вам нужно
var href = $(this).attr('href');
Внутри обработчика jQuery Click, объект это
этот объект ссылается на элемент, щелкнув, тогда как в вашем случае вы всегда получаете HREF для первого
на странице. Это, кстати, почему ваш пример работает, но ваш реальный код не
Это работает ... Проверено в IE8 (не забудьте разрешить JavaScript запустить, если вы тестируете файл с вашего компьютера) и Chrome.
Если на странице есть один
это работает, но многие
должны использовать var href = $ (это) .attr ('href');