javascript - 反转对象与其他对象事件的耦合方式

标签 javascript jquery event-handling

我当前有一个对象,volumeSlider,它受到其他两个控件事件的影响:

var volumeSlider = $('#VolumeSlider');

$('#MuteButton').on('mouseenter', function() {
    volumeSlider.fadeIn('fast');
}

$('#Controls').on('mouseleave', function() {
    volumeSlider.fadeOut('fast');
}

我想反转它,以便volumeSlider“监听”MuteButton 和控件上的事件,而不是被告知响应它们。这可能吗?像这样的东西:

//Pseudo-Code:
volumeSlider.on('#MuteButton.mouseenter'){
    this.fadeIn('fast');
}.on('#Controls.mouseleave'){
    this.fadeOut('fast');
}

是 jQuery 的 http://api.jquery.com/bind/这里有用吗?

最佳答案

这里有一个建议:

volumeSlider.on('dosomething', function(e) {
    $(this).fadeIn('fast');
});

$('#MuteButton').on('mouseenter', function(e) {
    volumeSlider.trigger('dosomething');
}

关于javascript - 反转对象与其他对象事件的耦合方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11055657/

相关文章:

javascript - 多个类的选择不起作用

c# - 订阅后事件触发

Java - 创建单独的线程用于通过互联网发送对象

javascript/Jquery 弹出窗口 - 一次仅打开一个弹出窗口

java - J2ME按键事件处理

javascript - React-router-V4 未将 `match` 属性传递给渲染组件

javascript - 如何使用 JQuery 使周围的 DIV 变暗(类似于灯箱,但没有弹出窗口)?

javascript - 如果提供相等的类,angular2 测试中的 useClass 字段是否有任何区别?

javascript - 使用 jQuery 将 Fastclick 绑定(bind)到新动态创建的元素

javascript - 使用 jquery 和 regex 的电话号码格式