关于HTML DOM 中insertBefore与appendChild方法

关于HTML DOM 中insertBefore与appendChild方法,第1张

insertBefore:在现有的子节点前加入一个新的子节点。

append:在现有的子节点后加入一个新的子节点。

target.insertBefore(newChild,existingChild)

target是父节点,newChild是要插入到existingChild节点之前的节点。

target.appendChild(newChild)

target是父节点,newChild是要插入到所有子节点之后的节点。

在IE下,使用 insertBefore 时,第二个参数,也就是 existingChild 可以被省略。

而在 Chrome 与火狐下,第二个参数必须写上。

Chrome 报错: Uncaught TypeError: Failed to execute ‘insertBefore‘ on ‘Node‘: 2 arguments required, but only 1 present.

火狐报错: TypeError: Not enough arguments to Node.insertBefore

append的实现就是 innerHtml

相当于动态改变页面内容,要重新绘制。

你说的要22秒,我也太离谱了吧!!!!

以前写了一个大页面内容较多的,就是是5、6秒。

所以如果页面没有动态需求的话,尽量不要用append。

还要Append 你可以一块一块的加,比如:

<div id=sch_out>

<div id=s1></div>

<div id=s2></div>

<div id=s3></div>

....

</div>

$("#sch_out").append(s4)

$("#sch_out").append(s5)

......

这样页面改动较小,速度较快。

日志的时间,可以多加一个变量,打印差值就可以了,这样比较直观。

$("#ok").click(function(){

var str =""

    $(".num").each(function(){

        str += $(this).val()

    })

alert(str)

})


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7988637.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存