Bug IE: Flotr.DOM.node : use removeChild to detach the element from the DIV, and prevent to be removed when div.innerHTML is called
Kobee1203 opened this issue · 0 comments
Kobee1203 commented
I try to define my own legend container.
But in IE, when the following lines is called, the created table is empty :
if(legend.container){
table = D.node(table);
this.legend.markup = table;
D.insert(legend.container, table);
}
The problem comes from the D.node function (Flotr.DOM.node) that retrieves the DOM element (variable n) after adding it to a DIV.
However, when the line DIV.innerHTML = '';
is called, the element 'n' is emptied.
One solution would be to detach the element from the DIV using removeChild:
node: function(html) {
var div = Flotr.DOM.create('div'), n;
div.innerHTML = html;
/* FIX : IE: use removeChild to detach the element from the DIV, and prevent to be removed when div.innerHTML is called */
n = div.removeChild(div.children[0]);
div.innerHTML = '';
return n;
}