在下面的函数中,我正在尝试创建一个动态元素(textArea).我正在尝试使用textArea.onclick = resize将函数(resize)绑定到文本区域; 哪个工作正常.
我想要做的是将参数传递给resize函数(生成的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);
}
Run Code Online (Sandbox Code Playgroud)
如果我说textArea.onclick = resize(id); 那就是调用函数.
我如何绑定函数,并将参数传递给它?
使用闭包:
textArea.onclick = function() { resize(id); };
Run Code Online (Sandbox Code Playgroud)
或者使用元素id属性:
textArea.onclick = function() { resize(this.id); };
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9767 次 |
| 最近记录: |