gpt4 book ai didi

在操作发生之前触发 Javascript 事件

转载 作者:行者123 更新时间:2023-11-28 21:26:12 25 4
gpt4 key购买 nike

我正在尝试编写一个脚本,以便当我播放嵌入的声音对象时,我嵌入的图片也会改变。

function changePic() {
document.getElementById("sound").onclick = transform(document.getElementById("pic"));
}

function transform (pic) {
pic.src = "";
alert ("done");
}

问题是,当我加载页面时,即使我没有在声音对象上单击“播放”(autostart 设置为 false),Javascript 代码也会自动运行。有谁知道是什么原因造成的吗?

最佳答案

当您编写 onclick = transform(...) 时,您调用 transform 并将结果分配给 onclick .

您需要将处理程序设置为调用transform的匿名函数,如下所示:

document.getElementById("sound").onclick = function() {
transform(document.getElementById("pic"));
};

但是,这是添加事件的错误方法。
您应该调用 element.addEventListener/element.attachEvent。 (或者只使用 jQuery)

关于在操作发生之前触发 Javascript 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4982239/

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