0
$(this.element).live('mouseleave', function(evt){
$(this.element).trigger("mouseup");
});

我正在尝试在其 mouseleave 上触发相同元素的 mouseup 事件,但它无法正常工作,任何人都可以建议我进行需要更改

4

2 回答 2

1

当您处理事件时,您正在更改上下文。

尝试:

$(this.element).live('mouseleave', function(evt){
 $(this).trigger("mouseup");
});

但是,这可能不是执行您要实现的任何目标的正确方法-如果没有更广泛的代码示例,就很难说。

您可以声明您是自己的处理程序,然后调用包装每个事件的处理程序 - 这可能是一个更好的解决方案!

编辑

回应评论:

你可以这样做:

var myOnMouseUp = function(event){
  console.log('Do something on mouse up')
}

$(this.element).live('mouseleave', myOnMouseUp);

$(this.element).live('mouseup', myOnMouseUp);
于 2013-03-19T13:40:27.267 回答
0

这应该可以正常工作:

$("#test").on("mouseup",function(){
alert("Mouse up triggered!");
});
$("#test").on('mouseleave', function(evt){
$("#test").trigger("mouseup");
});

其中“测试”只是一个链接。

http://jsfiddle.net/8D26W/

于 2013-03-19T13:42:22.023 回答