gpt4 book ai didi

javascript - function() 与 javascript onClick 中的函数问题

转载 作者:行者123 更新时间:2023-12-01 00:09:44 24 4
gpt4 key购买 nike

我通过 javaScript 在我们的页面上动态创建了一个图像元素
我想为我新创建的图像元素设置 onClick 。

我遇到了一个问题,但我不知道为什么?,

我的原始代码:

<html>
<body>

<button type="button" onclick="createImgNote()">Get line height</button>

<script>

function createImgNote() {
var img = document.createElement('img');
img.src ='ic_notebook.png';
img.style.left="100px";
img.style.top="150px";
img.style.position = "absolute";
img.onclick = imgClick;
document.body.appendChild(img);
}

function imgClick()
{
alert("imgClick called");
}
</script>
</body>
</html>

当我使用img.onclick = createImgNote时表示我的函数没有 ()
浏览器首先生成图像,然后每次用户单击图像时,Broswer 都会执行我的 onclick 函数。

但是当我使用img.onclick = createImgNote()时意味着我的 onclick 函数与 ()
浏览器 首先执行我的函数,然后创建图像元素,最后创建的图像元素不可点击。

如果有人知道这个问题,请告诉我为什么会出现这个问题?

最佳答案

当您执行 img.onclick = createImgNote 时,它会将该函数分配给该事件监听器。

当您执行 img.onclick = createImgNote() 时,它会调用该函数并将返回值分配给该监听器。每当你在函数后面加上 () 时,你就是在调用该函数。

关于javascript - function() 与 javascript onClick 中的函数问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60152178/

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