Reputation: 1047
I am wondering how I should declare a function in a jQuery script.
What I've got now:
function adjust_menu() {
alert("test test");
};
but when I call it like this:
("#first_link").click(function() {
adjust_menu();
});
it doesn't work. What am I doing wrong?
Upvotes: 4
Views: 14912
Reputation: 2312
EDIT: Your problem is definitely that you forgot the $
or jQuery
before you used jQuery.
Also you can just do ("#first_link").click(adjust_menu)
Upvotes: 3
Reputation: 322492
This may be a typo, but you're missing the $
before the jQuery selector, and you need to be sure the DOM is ready before running this code:
$(function() {
$("#first_link").click(function() {
adjust_menu();
});
});
Doing $(function() { ... });
is a shortcut for jQuery's .ready()
method which makes sure the DOM is ready before your code runs. Selecting first_link
does no good if it doesn't exist yet. :o)
Upvotes: 9
Reputation: 630409
Unless it's a typo, you're missing the $
or jQuery
at the start:
$("#first_link").click(function() {
adjust_menu();
});
Or a bit shorter, and maintaining context:
$("#first_link").click(adjust_menu);
In any case, you should be seeing an error in your console (provided you're executing this when #first_link
is present (e.g. `document.ready)), always check your console to see what's blowing up.
Upvotes: 4