Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

does e.stopPropagation() in jquery works on anchor tag

i want prevent eventpropogation from element inside an anchor tag i m trying to use e.stopPropagation(); it doesn't seem to work is it possible or i m just wasting time please help me out of here javascript is:

$(document).ready(function(){
    $('.alink .p').click(function(e){
    alert("hi");
    e.stopPropagation();  
});

html is :

<div>
    <a href="http://google.com" class="alink" >Google links
          <p class="p">Another Links to prevent default</p>
    </a>
</div>

thanks for your precious time

like image 318
spiderman Avatar asked Jan 21 '12 10:01

spiderman


People also ask

What is e stopPropagation () in jquery?

Definition and Usage. The event. stopPropagation() method stops the bubbling of an event to parent elements, preventing any parent event handlers from being executed. Tip: Use the event. isPropagationStopped() method to check whether this method was called for the event.

What does the event stopPropagation () method do?

stopPropagation() The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases.

What's the difference between event preventDefault () and event stopPropagation ()?

The event. preventDefault() will not allow the user to leave the page and open the URL. The event. stopPropagation() method stops the propagation of an event from occurring in the bubbling or capturing phase.


1 Answers

event.stopPropagation() stops passing the event to handlers further away in DOM structure from the element, on which originally event was triggered. It does not, although, prevent action that has already been triggered.

You should use event.preventDefault() to stop mentioned above default action.

Sources:

  • event.preventDefault()
  • event.stopPropagation()
like image 58
Krzysztof Bujniewicz Avatar answered Oct 23 '22 18:10

Krzysztof Bujniewicz