- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Mon, 21 Nov 2011 07:56:30 -0500
- To: www-dom@w3.org
On 11/21/11 5:17 AM, Mounir Lamouri wrote: > This issue happened recently with input.list: it broke a few websites > but as far as I know, most of them got fixed. However, I think it would > be better to try to use .remove() and rename it if it happens to break > everything. Note that there is an important difference here between the issues caused by .list and the issue raised by Andy. Andy's issue is that new code using the new methods could break for some elements. In particular, I think forms and documents are the only nodes that do the random name lookup thing and could have issues with the new properties being shadowed by existing elements. On the other han, the .list issue, which also applies to .remove() and company, is that any code like this: <script>function remove(id) { /* stuff */ }</script> <div onclick="remove(this.id)">Click me</div> works right now but will break with this change. This has already been an issue with .list, with .contextMenu (see https://bugzilla.mozilla.org/show_bug.cgi?id=701328 which bit some sort of intranet-facing web app), and is likely to happen any time we add any new properties on elements or documents. The shorter the names, the more likely the compat issues. Going forward, we should be encouraging authors to follow https://developer.mozilla.org/Writing_Forward_Compatible_Websites#Prefix_all_global_variable_access_in_onfoo_attributes_with_.E2.80.9Cwindow..E2.80.9D but getting there will take some work. :( -Boris
Received on Monday, 21 November 2011 12:57:02 UTC