I am using this as my starter template: www.html5reset.org/

It’s pretty nice, but I believe something is wrong with jQuery in there.

In the functions.php it says:

// Load jQuery
    if ( !function_exists(core_mods) ) {
        function core_mods() {
            if ( !is_admin() ) {
                wp_deregister_script('jquery');
                wp_register_script('jquery', ("//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"), false);
                wp_enqueue_script('jquery');
            }
        }
        core_mods();
    }

This seems fine to me – is it alright?

There also is a premade JS file. In this file it says:

// remap jQuery to $
(function($){})(window.jQuery);

I don’t know really what this does, but it seems also ok.

To test if jQuery works, I tried the following – none of it is woking, jQuery is not defined.

$(document).ready(function() {
    alert("This is a test.");
});

jQuery(document).ready(function() {
    alert("This is a test.");
});

$(document).ready(function($) {
    alert("This is a test.");
});

So, can you tell ma what could be wrong with this? Thank you!

2 Answers
2

just to help a bit further … WordPress runs jQuery in ‘safe’ mode

which means in WordPress you need to write code like this
jQuery(document).ready(function() {

and not like this

$(document).ready(function() {

But what the HTML5BP has done is added this funky bit of code (probably kindly to help Developers)

// remap jQuery to $
(function($){})(window.jQuery);

FYI there is a 3rd method of switching back to the $ symbol for jQuery which is to start your code like this:

jQuery(document).ready(function($) {

from this point on in your code you can now use $ to refer to jQuery

Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *