On 11 Dec 2013, at 18:40, Bryan Davis <bd808(a)wikimedia.org> wrote:
On Wed, Dec 11, 2013 at 9:59 AM, Sen
<kik888(a)gmail.com> wrote:
when i open the chrome console,i always can get:
event.returnValue is deprecated. Please use the
standard event.preventDefault() instead.
is any plan to fix this?
I don't know if there is currently a plan to fix it, but the warning
is from jQuery and should be fixed by version 1.11 or greater [0]. As
noted on the upstream bug this is just a warning and should have no
effect on functionality.
[0]:
http://bugs.jquery.com/ticket/14282
In addition to merely being deprecated (and us using a dated version of jQuery),
it is also harmless if support were to be removed entirely by Chrome.
As far as I know, no version of jQuery ever relied on event.returnValue.
It just did the fallback from the standard event.preventDefault in an odd
way causing it to trigger a property access, which then (now, years later)
got triggered by Chrome’s deprecation system.
Simplified:
* They were using (jQuery v1.9.1):
e.defaultPrevented || e.returnValue === false
Which means if the browser supports standard e.defaultPrevented,
but is genuinely set to false (it is a boolean property after all) it would
look at e.returnValue.
* They are now using (jQuery v1.11.0-pre, latest upstream master):
e.defaultPrevented ( … )
e.defaultPrevented === undefined && e.returnValue === false
-- Krinkle