I'm using jQuery to develop in web environment.
I want to know why
$("#a#trigger").trigger('mouseenter');
$("#a#trigger").trigger('hover');
$("#a#trigger").trigger('mouseover');
All 3 of those aren't working to activate a hover function that I have.
$(function() {
$('a#trigger').hover(function(e) {
$('div#pop-up').show();
}, function() {
$('div#pop-up').hide();
});
});
});
a#trigger
is the name of the anchor, and #pop-up
is a div element in my web.
The problem is that I want to mouse over some event in FullCalendar plugin and those functions aren't working.
Thanks.
You are on the right track, the problem is the extra #
in the selector, just remove the first hash:
$("a#trigger").trigger('mouseenter');
Note that since IDs must be unique, there is no need to specify the element type, $('#trigger')
is more efficient.
Also note that:
Deprecated in jQuery 1.8, removed in 1.9: The name "hover"
used as a shorthand for the string "mouseenter mouseleave"
. It attaches a single event handler for those two events, and the handler must examine event.type
to determine whether the event is mouseenter
or mouseleave
. Do not confuse the "hover"
pseudo-event-name with the .hover()
method, which accepts one or two functions.
Your jQuery selector should be written as e.g.
$('a#trigger');
instead of $('#a#trigger');
In jQuery a # in a selector matches an id. In this case trigger
is an id, but a
is an HTML element and requires no prefix.
Your final code would be:
$("a#trigger").trigger('mouseenter');
$("a#trigger").trigger('hover');
$("a#trigger").trigger('mouseover');