首页 > 编程 > JavaScript > 正文

通过 Dom 方法提高 innerHTML 性能

2019-11-21 01:47:46
字体:
来源:转载
供稿:网友
复制代码 代码如下:

function 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;
};

对于 Opera 也依然有性能提高,只是提高幅度没有上面两种浏览器惊人而已,
唯在 IE 中,则原始的 innerHTML 的方法更效率点。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表