gpt4 book ai didi

Javascript 无法读取 null 的属性 'parentElement'

转载 作者:行者123 更新时间:2023-11-30 15:43:59 24 4
gpt4 key购买 nike

我在论坛上搜索了为什么在调用 getElementById 时我的 img 为 null,并且我已将脚本移到 img 下面,但我仍然得到图片为 null 的错误。

这是我的代码:

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<img id="irimg" src="ir.bmp" alt="Video Stream" style="width:640px;height:480px;">
<script type="text/javascript">
function loadNextImage() {
// An image element for loading our next image
var ourImage = new Image();

// Setup the event handlers before setting the source
ourImage.onload = function() {
// Request the next frame
requestAnimationFrame(loadNextImage);

// Swap out the image element on the page with the new one
var oldImage = document.getElementById('irimg');
oldImage.parentElement.insertBefore(ourImage, oldImage);
oldImage.parentElement.removeChild(oldImage);
};

ourImage.onerror = function(){
// Something went wrong with this frame. Skip it and move on.
requestAnimationFrame(loadNextImage);
}

// Finally load the image
ourImage.src = "ir.bmp?" + new Date().getTime();
};

requestAnimationFrame(loadNextImage);
</script>
</body>
</html>

错误发生在这里:

var oldImage = document.getElementById('irimg');
oldImage.parentElement.insertBefore(ourImage, oldImage);

Chrome 给出的错误是 Uncaught TypeError: Cannot read Property 'parentElement' of null

如果您能帮助我理解为什么它为空,我将不胜感激。谢谢。

最佳答案

您正在删除具有该 ID 的图像,然后下次您的代码通过它时找不到具有该 ID 的任何图像。

您需要在要替换旧图像的新图像上设置该 ID。

像这样

// An image element for loading our next image
var ourImage = new Image();
ourImage.id='irimg';

参见:https://jsfiddle.net/9Lp1724v/

关于Javascript 无法读取 null 的属性 'parentElement',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40379180/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com