jQuery插件:处理事件

5
我目前正在开发一个jQuery插件,我想知道是否可以让插件监听事件而不是被事件触发。
所以,不是这样的:
$('#element_id').mouseover(function() {
    $(this).plugin();
});

$('#element_id').mouseout(function() {
    $(this).pluginHide();
});

我想尝试做类似这样的事情:
$('#element_id').plugin(????, ????);

将问号替换为某种引用元素和触发其显示或隐藏的事件。 我在使用jQuery方面仍处于起步阶段,如果这个问题的解决方案非常明显,请耐心等待我。
1个回答

8

经过一番尝试,看起来我需要内置的"bind()"函数。为了解决我的原始问题:

jQuery.fn.plugin = function(show, hide) {
    this.bind(show, function() {
        // Do something to show.
    };

    this.bind(hide, function() {
        // Do something to hide.
    };
};

6
不要使用 $(this),而要使用 this - Aliostad

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接