How To Pass The JQuery Element Inside A Function - Syntax
I need to pass jQuery as an argument in the first two functions, or the code inside initialiseSticky will not work. It does work for document.ready but not for ajaxComplete, my sy
Solution 1:
Javascript implements Closures
so any inner function
is able to visit the parent scope.
var foo = 'bar';
function baz() {
console.log(foo); // => baz
}
Now, because your initialiseSticky
is an inner function of the global scope Window
and also jQuery
is in this scope as window.jQuery
you don't need to pass a jQuery reference to initialiseSticky
because it is already able to access it.
note that $
is just an alias of jQuery
.
Solution 2:
Your whole code is messed around a lot. I'll try to strip it down.
$(function() {
console.log('document ready- sticky');
initialiseSticky($);
});
$(document).ajaxComplete(function () {
console.log('ajax complete- sticky');
initialiseSticky($);
});
function initialiseSticky($) {
//my code
}
Try if this works. Note: I'm not sure passing $ is even necessary.
Post a Comment for "How To Pass The JQuery Element Inside A Function - Syntax"