Combining $('body').on('click') With $(window).resize(function() In JQuery
Wondering if there is a way to combine identical code of 2 separate functions into 1 function. In my case: jQuery('body').on('click', '.some_div', function (e) { // Long and fa
Solution 1:
You can define a single function which you call under both events:
function doSomething(e) {
console.log('Your code here...');
}
jQuery('body').on('click', '.some_div', doSomething);
jQuery(window).resize(doSomething);
Bear in mind that the reference to this
will be different depending on the event raised, should that be used within your doSomething
function.
Solution 2:
You can create a function to handler both the events and pass this function reference to the event handlers.
function myHandler(e) {
// Long and fancy code
}
jQuery('body').on('click', '.some_div', myHandler);
jQuery(window).resize(myHandler);
Solution 3:
There's another way to do that.
jQuery('body').on('click', '.some_div', function (e) {
// Long and fancy code
});
jQuery(window).resize(function () {
$('.some_div').trigger('click')
});
Solution 4:
create a separate function and call it from required locations:
jQuery('body').on('click', '.some_div', function(e){
myFunction();
});
jQuery(window).resize(function() {
myFunction();
});
function myFunction(){
// Long and fancy code
}
Post a Comment for "Combining $('body').on('click') With $(window).resize(function() In JQuery"