想知道是否有一种方法将两个不同函数中相同的代码合并成一个函数。
在我的情况下:
jQuery('body').on('click', '.some_div', function (e) {
// Long and fancy code
});
jQuery(window).resize(function () {
// Do the same fancy stuff (identical code)
});
想知道是否有一种方法将两个不同函数中相同的代码合并成一个函数。
在我的情况下:
jQuery('body').on('click', '.some_div', function (e) {
// Long and fancy code
});
jQuery(window).resize(function () {
// Do the same fancy stuff (identical code)
});
您可以定义一个函数,在两个事件下都调用它:
function doSomething(e) {
console.log('Your code here...');
}
jQuery('body').on('click', '.some_div', doSomething);
jQuery(window).resize(doSomething);
请记住,参考this
的对象取决于触发的事件,如果在您的doSomething
函数中使用,则应考虑这一点。
function myHandler(e) {
// Long and fancy code
}
jQuery('body').on('click', '.some_div', myHandler);
jQuery(window).resize(myHandler);
有另外一种方法可以实现。
jQuery('body').on('click', '.some_div', function (e) {
// Long and fancy code
});
jQuery(window).resize(function () {
$('.some_div').trigger('click')
});
jQuery('body').on('click', '.some_div', function(e){
myFunction();
});
jQuery(window).resize(function() {
myFunction();
});
function myFunction(){
// Long and fancy code
}