Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Opera上removeChild()函数的呈现问题_Javascript_Opera_Removechild - Fatal编程技术网

Javascript Opera上removeChild()函数的呈现问题

Javascript Opera上removeChild()函数的呈现问题,javascript,opera,removechild,Javascript,Opera,Removechild,我在Opera 12.15上遇到了removeChild()函数的问题 var lines = document.getElementById('lines'); while(lines.hasChildNodes()) lines.removeChild(lines.firstChild); 请看一下这把小提琴: 删除节点后,红色文本仍然可见 这是预期行为还是错误?请解释Opera中发生的情况。我只能在Firefox/Chrome中进行测试,所以我看不出问题出在哪里……如果有帮助,您可以尝试

我在Opera 12.15上遇到了removeChild()函数的问题

var lines = document.getElementById('lines');
while(lines.hasChildNodes()) lines.removeChild(lines.firstChild);
请看一下这把小提琴:

删除节点后,红色文本仍然可见


这是预期行为还是错误?

请解释Opera中发生的情况。我只能在Firefox/Chrome中进行测试,所以我看不出问题出在哪里……如果有帮助,您可以尝试使用
lines.removeChild(lines.childNodes[0])相反,如果您只是执行
lines.innerHTML=“”,则可能会保存中间重绘,并可能避免问题。看起来像Opera中的渲染问题。不管您使用什么,文本仍然保留,但是如果您输入DOM,元素实际上就消失了,只是看起来它没有在屏幕上正确地重新绘制?似乎jQuery在使用remove()时解决了这个问题,所以请查看源代码!我也在用1.9进行测试,并且尝试了更多,似乎有时它能工作,有时一些文本消失,然后其他的文本也会闪烁消失,而其他时候它根本不工作,所以jQuery可能没有解决这个问题,我第一次尝试它时它就工作了,这是一个侥幸!