зарегистрировать любой клик на href на всей странице

Заменить root @ localhost с помощью root @ localhost

-1
задан Rory McCrossan 13 July 2018 в 15:52
поделиться

4 ответа

Чтобы выбрать любой щелчок по любому тегу с атрибутом href:

$("[href]").click(function() {...` 

Или

$(document).on("click", "[href]", function() {...` 

, чтобы также включать динамические элементы (добавленные после запуска кода jquery) .


Для все, что можно нажать , затем:

$(document).on("click", function(event) { 
    var target = event.target;

});
0
ответ дан freedomn-m 17 August 2018 в 12:27
поделиться

Если вы хотите, вы можете использовать селектор $( "*" ), чтобы поймать каждый elt страницы (cf: All selector ), если вы добавите селектор атрибутов, например [href], вы получите все elt которые имеют атрибут Href.

$("body").on("click", "*[href]", function(){});
1
ответ дан Ganov13 17 August 2018 в 12:27
поделиться

Чтобы выбрать что-либо с атрибутом href, вы можете использовать селектор атрибутов .. [attribute] ..

например.

$("body").on("click", "[href]", function (e) {
  e.preventDefault();
  console.log($(this).text() + " = " + $(this).attr("href"));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<span href="123">Span With href</span><br>
<a href="345">Anchor tag with href</a>
<div href="888">Div with href</div>

1
ответ дан Keith 17 August 2018 в 12:27
поделиться

Вместо

$(this).on("click", "a", function(){});

вы можете использовать подстановочный знак:

$(this).on("click", "*", function(){});

или селектор атрибутов, если вы хотите выбрать элементы, имеющие атрибут href:

$(this).on("click", "[href]", function(){});

Но этот код не является хорошей идеей:

<span hre="/abc">abc</span>

, так как span не должен иметь href. И вы ошиблись href, вместо этого вы набрали только hre.

0
ответ дан Lajos Arpad 17 August 2018 в 12:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: