Juriy Zaytsev
prototype.js core developer
Javascript maniac, Prototype developer, clean code junkie
ajax
http://twitter.com/kangax
http://perfectionkills.com/
1363 followers
2152 tweets
kangax
Nice post on IEBlog highlighting DOM fixes in IE9 http://j.mp/bi8oKJ Some ES5 methods (e.g. sealing ones) are still iffy in IE DOM, though.
kangax
So "Live Streaming is based on open standards" yet "viewing requires .. Mac running Safari" Something doesn't add up here http://j.mp/9aLo8E
kangax
What a nice workaround listed in "Implement Geolocation API" ticket in IE bug tracker: "Use Chrome 5+, Safari 5+, FireFox 3.6+, Opera 10.6+"
kangax
... which is based on the fact that bound functions have no own "prototype" property & non-bound ones have non-deletable "prototype"
kangax
I think the easiest way to check if functon is bound (in ES5) is: typeof obj == 'function' && !Object.hasOwnProperty.call(obj, 'prototype')
kangax
.@bga_ You might be interested in these "indirect eval call" tests — http://kangax.github.com/jstests/indirect_eval_call_test/
kangax
.@thecssninja Looks like a known issue — http://j.mp/atyPEQ I suspect that this is why isEventSupported('input') gives false negative in FF
kangax
.@thecssninja Apparently "input" event in FF can only be caught via `addListener` (`el.oninput=..` doesn't work, contrary to Saf, Op, Ch) :/
kangax
No clientX/clientY (nor pageX/pageY) on contextmenu events in #IE9PP4. 7th bug report, here I come...
kangax
Ah, looks like Prototype's event handling is messed up in IE9 due to some remnants of... obviously browser sniffing. Tweak, tweak.
kangax
Fabric.js is the canvas library I mentioned earlier. Now on github (code, demos, no docs yet) http://j.mp/fabricjs
kangax
Mozilla's freshly baked `Function.prototype.bind` article doesn't disappoint in quality http://j.mp/cmzJxC (bind is also soon landing in FF)
kangax
Lots of threads on SO mistakenly assume that currently executed script is last one, forgetting defer and async attributes http://j.mp/95HAdy
kangax
To explain ES5 "sealing" methods in simple language (and in progression) — http://gist.github.com/551953
kangax
Found this lovely "blocker" ticket in our bug tracker https://twitpic.com/2ic6om Good to see resolution is "fixed"
kangax
.@paul_irish Nice. I see bound functions are shown w. "[native code]" in Chromium 7 (like IE9) & have "prototype" property contrary to specs
kangax
Updated ES5 compat table to show results in current browser (+ added few tests and updated browser versions) http://j.mp/czC8qz
kangax
Another example of how shoehorning PHP concepts onto JS makes for nonsensical solutions with fundamental misunderstanding http://j.mp/9oubj1
kangax
This static analysis tool looks interesting http://j.mp/bgb6RV but too simplistic; e.g `return 1 || 'x'` shows fun type as
kangax
Finally some activity in IE bug tracker. 200+ tickets since release of PP4; wonder how many will be fixed till beta release on Sep 15.
kangax
Oh wow, nice progress with ES5 strict mode in FF4.0b5pre. Only 5 failing tests here w. latest nightly http://j.mp/95R4OG (vs. 25+ in Webkit)
kangax
Here's a tip. Don't name an array variable as `stack`. Name it as whatever that array contains (e.g: callbacks, translations, handlers, etc)

