Как предотвратить запуск события по умолчанию, но при этом разрешить всплывающему событию - PullRequest
8 голосов
/ 19 июля 2011

Использование jQuery: с помощью следующего кода я бы хотел предотвратить запуск URL-адреса href (в данном случае хеша «#») при щелчке, но все же разрешить событию click продолжать пузыриться по цепочке.Как это может быть достигнуто, пожалуйста?

<div>
    <a href="#">Test</a>
</div>

$('a').click(function(e){
    // stop a.click firing but allow click event to continue bubbling?
});

Ответы [ 3 ]

9 голосов
/ 19 июля 2011
$('a').click(function(e){
    e.preventDefault();
    // stop a.click firing but allow click event to continue bubbling?
});

e.preventDefault() не предотвратит пузырение, e.stopPropagation() или return false (остановите оба).

0 голосов
/ 19 июля 2011

попробуйте это ..

$('a').click(function(e){
     e.preventDefault();
    // stop a.click firing but allow click event to continue bubbling?

});

здесь вы можете найти разницу между return false и e.preventDefault();

0 голосов
/ 19 июля 2011

Вы можете сделать:

$('a').click(function(e){
     e.preventDefault();
    // stop a.click firing but allow click event to continue bubbling?

});

скрипка здесь http://jsfiddle.net/tU53v/

...