-
29 Nov 2012 1:29 AM #1
Ext.Element.getAttribute not working in IE10
Ext.Element.getAttribute not working in IE10
Hello,
given markup:
and running:HTML Code:<a id="linkId" class="logo-rFactor" download="rFactorPlugin" href="#">rFactor</a>
works fine in all browsers but IE10. In IE10, 'value' is null; However when examining the element in debugger,Code:var el = Ext.get('linkId'); var value = el.getAttribute('download');
I can see that :
orCode:el.dom.attributes["download"].value "rFactorPlugin" String
both return the correct value;Code:el.dom.getAttribute('download')
This leads me to conclusion that ext.js is not getting the attribute values in IE10 correctly.
-
29 Nov 2012 4:13 PM #2
I've looked into your test case with the current 4.2 working branch and this issue appears to be already resolved. Thanks for the test case.
Evan Trimboli
Sencha Developer
Twitter - @evantrimboli
Don't be afraid of the source code!
-
29 Nov 2012 4:40 PM #3
Thanks sounds good. When can we expect to get the working code? Millions of people are using IE10, and the number is not going to be shrinking...
If not a release date, at least please say weeks/months/half year...
-
4 Dec 2012 1:47 PM #4
I agree, its already out on Win8, RC1 or 2 is out for Win7. Seems like GA for Win7 will be arriving shortly, would be nice to actually hear when 4.2 will be out so we can start telling customers when they can expect full support. Surprised more people aren't concerned about the lack of response for this.
-
15 Jan 2013 3:31 PM #5
This bug is also present in ExtJS 3. Are there any suggested fixes or patches for it on 3?
-
21 Jan 2013 5:44 AM #6
For those of you who can't wait for the next version, I've made a workaround for this problem in ExtJs version 4.1.1.1. Feel free to use it (at your own risk).
It might work for other versions too unless the 'getAttribute' function in that version is too different.Code:Ext.override(Ext.dom.Element, { getAttribute: (Ext.isIE6 || Ext.isIE7 || Ext.isIE8) ? function (name, ns) { var d = this.dom, type; if (ns) { type = typeof d[ns + ":" + name]; if (type != 'undefined' && type != 'unknown') { return d[ns + ":" + name] || null; } return null; } if (name === "for") { name = "htmlFor"; } return d[name] || null; } : function (name, ns) { var d = this.dom; if (ns) { return d.getAttributeNS(ns, name) || d.getAttribute(ns + ":" + name); } return d.getAttribute(name) || d[name] || null; } });
Cheers,
Boyd
Looks like we can't reproduce the issue or there's a problem in the test case provided.


Reply With Quote