从函数到函数传递$(this)

afc*_*ign 1 jquery function this

我希望能够声明一个可以与任何选择器或方法一起使用的函数,因此我认为它可以像下面那样完成,但它不起作用!

这是为什么?:)

$(document).ready(function() {

    $('img').hover(function(){
        imageClass();
    });

    function imageClass() {
        var thisClass = $(this).attr('class');
        console.log(thisClass)
    }

});
Run Code Online (Sandbox Code Playgroud)

Adi*_*dil 6

您可以$(this)从悬停事件传递为argument,所有您需要的是更改imageClass method to receive a parameter.

$(document).ready(function() {

    $('img').hover(function(){
        imageClass($(this));
    });

    function imageClass(obj) {
        var thisClass = obj.attr('class');
        console.log(thisClass)
    }

});
Run Code Online (Sandbox Code Playgroud)

  • `$(obj)`是一种矫枉过正.只是`obj`就足够了 (2认同)