九
12
2010
提高Firefox的innerHTML()的性能
作者: seasunfunction replaceHtml(el, html) { var oldEl = typeof el === "string" ? document.getElementById(el) : el; /*@cc_on // 原始的 innerHTML 在 IE 中的性能好一点 oldEl.innerHTML = html; return oldEl; @*/ var newEl = oldEl.cloneNode(false); newEl.innerHTML = html; oldEl.parentNode.replaceChild(newEl, oldEl); /* 一旦我们从 DOM 上移除老的元素,则返回新的元素引用。*/ return newEl; };
可以直接用el=replaceHtml(el, newHtml)代替el.innerHTML=newHtml。
(全文 …)



