I just ran into this question
Triggering click
event on anchor tag is not working here.
<a class="button2" href="#popup1">hello</a>
<div id="popup1" class="overlay">
<div class="popup">
<div class="contentSpec">
<h2>Would you like to visit</h2>
<h1>someURL</h1>
</div>
<a class="close" href="#"></a>
<div class="content">
<div class="box">
<a class="button" href="#popup1">YES</a>
<a class="button1" href="#popup1">NO</a>
</div>
</div>
</div>
</div>
JS:
$(document).ready(function() {
$(".button2").trigger('click');
});
My question, is why the trigger event is not working in this case?
As you don't have any.click()
event bound on it, it never fires it.You need to fire the DOM
click
event with.click()
instead of.trigger(e)
of jQuery method and this should only work on dom nodes. Which you can achieve by introducing the index[0]
or with jQuery's method.get(0)
.Instead try this:
and if this is the case then you can do this with javascript only:
Use
The
get(0)
will return the first DOM object instead of the jquery object, andclick()
will be triggered.Updated fiddle
You need to call native DOM
click()
method in order to fire default clicking anchor behaviour, jQuery specifically excludes it on anchor:-jsFiddle-