3

问题很简单:

$('#btn1').click(function(event){
    alert(
        "pageX: " + event.pageX +
        "\npageY: " + event.pageY
    );
});

$('#btn2').mouseout(function(e){
   $('#btn1').trigger('click');
});

第二个按钮提醒未定义的变量。有没有办法在传递鼠标位置时触发点击事件?

这是一个jsfiddle

4

1 回答 1

8

尝试这个

$('#btn1').click(function(event){
    alert(
        "pageX: " + event.pageX + 
        "\npageY: " + event.pageY
    );
});

$('#btn2').click(function(e){
    $('#btn1').trigger(e);
});

只需通过event object承载一切的原件。

​演示

您也可以创建一个自定义event object并按如下方式传递它

$('#btn2').click(function(e){
    var evt={
        'type':'click',
        'pageX':e.pageX,
        'pageY':e.pageY
    };
    $('#btn1').trigger(evt);
});

演示

于 2012-08-15T20:10:08.017 回答