#10531 closed enhancement (fixed)
Consider removing layerX and layerY from $.event.props
Reported by: | mathias | Owned by: | |
---|---|---|---|
Priority: | low | Milestone: | 1.7 |
Component: | event | Version: | 1.7b2 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
Every jQuery-bound event handler now logs this warning:
event.layerX
andevent.layerY
are broken and deprecated in WebKit. They will be removed from the engine in the near future.
Screenshot: http://i.imgur.com/wyQG4.png
You may want to consider removing layerX
and layerY
from $.event.props
. This is a backwards-incompatible change, but it must be done.
Change History (17)
comment:1 Changed 12 years ago by
Component: | unfiled → event |
---|---|
Milestone: | None → 1.7 |
Priority: | undecided → low |
Status: | new → open |
Version: | git → 1.7b2 |
comment:2 Changed 12 years ago by
Exactly.
Also, if people really need layerX
/layerY
they can always use event.originalEvent.layerX
and event.originalEvent.layerY
, but again — they would need to check if they are defined.
comment:4 Changed 12 years ago by
Pull request: https://github.com/jquery/jquery/pull/554
No unit tests are affected by this change.
comment:6 Changed 12 years ago by
FWIW just some links..
https://bugs.webkit.org/show_bug.cgi?id=21868 WebKit removing them (still open) https://bugs.webkit.org/show_bug.cgi?id=69951 WebKit deprecating them (fixed)
Mozilla is planning to remove them as well: https://bugzilla.mozilla.org/show_bug.cgi?id=674292
comment:7 Changed 12 years ago by
Resolution: | → fixed |
---|---|
Status: | open → closed |
comment:8 Changed 12 years ago by
This ticket is indicating that the problem still arises in Jquery 1.7: http://stackoverflow.com/questions/7825448/webkit-issues-with-event-layerx-and-event-layery
comment:10 Changed 11 years ago by
Reproduce with : Chrome 19.0.1084.52 MacOS, jQuery 1.7.2 Result: event.layerX and event.layerY are broken and deprecated in WebKit. They will be removed from the engine in the near future.
Safari on Mac is fine.
<html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> jQuery(document).ready(function(){ $(document).click(function(e) { console.log("click!"); }); }) </script> <body> </body> </html>
comment:11 Changed 11 years ago by
Reproduce with : Chrome 19.0.1084.52 MacOS, jQuery 1.7.2 Result: event.layerX and event.layerY are broken and deprecated in WebKit. They will be removed from the engine in the near future.
Safari on Mac is fine.
comment:12 Changed 11 years ago by
This can happen if any of your Chrome extensions use an old version of jQuery. Please don't report it here. Report it to the author of the extension, or wait for Chrome to fix this which is supposed to happen in 20.
comment:13 Changed 11 years ago by
Hi,
This is still happening, with Chrome (19.0.1084.56) and jQuery (1.7.2), even with no extension. For instance :
jQuery("body").ajaxSuccess(function(e,r,o) { console.log(o.url); }
return "event.layerX and event.layerY are broken and deprecated in WebKit. They will be removed from the engine in the near future."
comment:14 Changed 11 years ago by
DO NOT POST A "ME TOO". PLEASE READ THIS MESSAGE.
This can happen if any of your Chrome extensions use an old version of jQuery. Please don't report it here. Report it to the author of the extension, or wait for Chrome to fix this which is supposed to happen in 20.
comment:15 Changed 11 years ago by
dmethvin,
Not publishing a "Me too," just ensuring that the present state of things is understood in light of your most recent response. We are getting the warning with absolutely no extensions installed with Chrome 19.0.1084.56 m.
comment:16 Changed 11 years ago by
jQuery 1.7 fixed this problem. If this message is o҉ozing from Chrome's console it is not coming from anything the standard jQuery 1.7+ is doing. There is no test case proving otherwise. You are seeing this in some unholy MaŚs of web page populated from "10O Best jQuery Plugins of 2O09". jQuery was trying to do the world a favor. This is a Chrome bug. They bailed out and reversed their decision in Chrome 2o҉ so ín any case DO͇̹̺ͅƝ̴ȳ̳T BË͖́̉ ͠P̯͍̭O̚STƝ̴G M̲̖͊̒ͪͩͬ̚̚͜ ̶̧̨̱̹̭̯ͧ̾ͬOͮ͏̮̪̝͍RȆ̴̟̟͙̞ͩ͌͝!**
comment:17 Changed 10 years ago by
Interesting to see ... thank you it's well done :) Mögelmögelvattenskada
layerX/Y are not used internally and we do not normalize them. They are only present on the event object where supported, so anyone actually using them would have to check if they were undefined first anyway. I'm ok with removing them in 1.7.