gpt4 book ai didi

javascript - 将事件处理程序(带参数)添加到使用 document.createElement 创建的元素

转载 作者:行者123 更新时间:2023-11-30 07:29:22 24 4
gpt4 key购买 nike

在下面的函数中,我试图创建一个动态元素(textArea)。我尝试使用 textArea.onclick = resize; 将函数 (resize) 绑定(bind)到文本区域,效果很好。

我想做的是将一个参数传递给调整大小函数(生成的 id 或者,如果可能的话,textArea 本身)

    function addElement(elm, event) {
var textArea = document.createElement('textarea');
var id = Math.random();
textArea.setAttribute('id', id)
textArea.setAttribute('cols', 1);
textArea.setAttribute('rows', 3);
textArea.onclick = resize;
elm.appendChild(textArea);
}

如果我说 textArea.onclick = resize(id); 那么它只会调用该函数。

如何绑定(bind)函数,并向其传递参数?

最佳答案

使用闭包:

textArea.onclick = function() { resize(id); };

或者使用元素的id属性:

textArea.onclick = function() { resize(this.id); };

关于javascript - 将事件处理程序(带参数)添加到使用 document.createElement 创建的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3302344/

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