in partnership with mediatemple

Ticket #547 (assigned defect)

Opened 7 months ago

Last modified 2 days ago

element Attribute error in ie

Reported by: sleets Owned by: kamicane
Type: defect Priority: trivial
Milestone: Mootools version 1.3 Component: Core
Keywords: getAttribute Cc:

Description

[html]
<div id="xx" empty="sss">
[/html]
    $(el).getAttribute( 'empty') // return sss in firefox
    //return  Element.Prototype.empty in ie.

Change History

Changed 7 months ago by sleets

i think change HTMLElement.prototype maybe raise a lot of trouble.

The following methods for reference

var $ = function (el){
   if( el.$wrap ) return el.$wrap;
   if( el.nodeName ){
       el.$wrap = new Element(); // retuern a new Element.prototype object
       el.$wrap.element = el;   // the wrap.element reference to the HTMLElement
       Garbage.colect(el);
   }
   return el.$wrap;
}
//Element.prototype != HTMLElement.prototype;

Changed 7 months ago by sleets

with el.$wrap === Element instance;

Element.prototype.setHTML = function(shtml){
   this.element.innerHTML = shtml;
   return  this;
}

Changed 7 months ago by sleets

[html]
<div id="x" empty="test"></div>
[/html]

window.addEvent('domready', function(){
	alert( document.getElementById('xx').outerHTML ) // <div id="x" empty="test"></div>
	alert($('xx').outerHTML ) // <div id="x"></div> 
});

Browser is ie.

Changed 6 months ago by kamicane

  • owner set to kamicane
  • status changed from new to assigned
  • milestone changed from Mootools version 1.2 to Mootools version 1.3

Changed 4 months ago by kamicane

it is currently impossible to name an element attribute the same as a MooTools element method. Internet explorer will return the method with getAttribute.

We'll have more time to find a solution to fix this stupid explorer bug in 1.3

Changed 2 days ago by tomocchino

  • milestone set to Mootools version 1.3
Note: See TracTickets for help on using tickets.