我有两个div:
<div id="div1"></div>
<div id="div2"></div>
Run Code Online (Sandbox Code Playgroud)
我有div1的以下jquery:
$('#div1').click(function(e)
{
alert(e.pageX + ' ' + e.pageY);
});
Run Code Online (Sandbox Code Playgroud)
.现在,我想触发div1的click eventhandler来执行divc的clcicking.为此,我写道:
$('div2').click(function(e)
{
$('#div1').trigger('click');
});
Run Code Online (Sandbox Code Playgroud)
它工作正常,但问题是我无法在div1的事件处理程序中获得e.pageX和e.pageY.如何将div2 click事件处理程序的eventdata传递给div1 click事件处理程序.请帮忙.
由于您要触发的事件属于同一类型,因此您可以直接传递旧事件对象:
$('#div2').click(function (e) {
$('#div1').trigger(e);
});
Run Code Online (Sandbox Code Playgroud)
对于不同类型的事件,您可以创建自定义事件对象:
$('#div2').mouseenter(function (e) {
var newE = jQuery.Event('click');
newE.pageX = e.pageX;
newE.pageY = e.pageY;
$('#div1').trigger(newE);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4352 次 |
| 最近记录: |