jquery – 将$(this)传递给函数

大家好,
我正在尝试建立一个媒体播放列表,可以推进积分,播放视频并更改拇指悬停,视频结束和下一个/上一个点击的标题.所以我需要编写一些可以一起调用的函数.像这样:

    function showBox()
    {
        $(this).parents('.container').find('.box').show();
    };

    function hideBox()
    {
        $(this).parents('.container').find('.box').hide();
    };

    $('a').hover(
        function()
        {
            showBox();
        },
        function()
        {
            hideBox();
        }
    );

问题是$(this)没有从.hover传递到函数.我该怎么做呢?

谢谢您的帮助!

最佳答案
如果您这样做,这将继续:

$('a').hover(showBox,hideBox);

编辑:要解决注释中的问题,这将适用于您指定为事件处理程序的任何函数.无论是匿名函数还是命名函数都无关紧要.

这个:

$('a').click(function() { 
    alert( this.tagName ); 
});

…是相同的:

function alertMe() {
    alert( this.tagName );
}

$('a').click( alertMe );

…或这个:

function alertMe() {
    alert( this.tagName );
}

$('a').bind('click', alertMe );

转载注明原文:jquery – 将$(this)传递给函数 - 代码日志