【发布时间】:2021-07-08 21:12:32
【问题描述】:
所以我使用 for 循环动态创建了一些按钮,没什么特别的,但是我需要从函数数组和随机样式中为每个按钮分配一个随机函数。怎么办呢?
另外我该如何运行按钮,因为
button.addEventListener ("click", actions[i]());
仍然只是执行不在按钮上的功能
我的代码
let i = 1;
let body = document.getElementsByTagName("body")[0];
//Functions
let actions = [add,clear,flow]
//styles color of btn ?
let styles = ["blue","red"]
for (i; i <= 20; i++) {
let button = document.createElement("button");
button.innerHTML = 'Button '+i;
body.appendChild(button);
//heres where i'm lost
button.addEventListener ("click", function() {
alert(this.innerHTML);
});
}
【问题讨论】:
-
你需要传递不带()的函数,如果你传递带有()意味着函数的结果,如果你不带它传递意味着你正在传递函数对象
标签: javascript html arrays button onclick