jQuery 1.7 clientX/pageX undefined

Thi*_*ker 6 jquery events jquery-ui jquery-1.7

我使用jQuery和jqueryUI中的draggable.当我将jQuery从1.6更新到1.7时,clientX和pageX属性从事件变量中消失.这是一个例子:

http://jsbin.com/ezulas/7/edit

如果在给定的示例中jQuery版本更改为1.6.4 - 它开始工作.使用最新版本 - clientX/Y和pageX/Y都不起作用.我发现我可以使用e = e.originalEvent - 但这似乎不是正确的解决方案.

Jas*_*per 7

event.layerX和event.layerY:我们在1.7版中删除了这些非标准属性.虽然我们通常会经历这些的弃用通知期,但Chrome版本16会在页面上生成大量控制台警告消息.因此,我们决定立即删除它们.在仍支持这些属性的平台上,可通过event.originalEvent.layerX和event.originalEvent.layerY获得这些属性.

资料来源:http://blog.jquery.com/2011/11/03/jquery-1-7-released/

console.log(e);您的内部dragstop事件处理程序,你可以看到,所有的x/ y坐标数据丢失jQuery的1.7; 但它可以访问event.originalEvent.

UPDATE

如果您在event物体中环顾四周,您可以在酒店找到pageX/ :pageYorigionalEvent

$('#test').html(e.originalEvent.pageX+','+e.originalEvent.pageY);
Run Code Online (Sandbox Code Playgroud)

以下是jsbin的更新版本:http://jsbin.com/ezulas/13/edit

  • 在jQuery文档编写中,我们通过使用event.pageX访问pageX:http://api.jquery.com/event.pageX/但这不起作用,我想知道如何解决它,而不是使用解决方法. (2认同)