我会使用 DOM 来附加孩子,然后将类名和事件处理程序添加到这些孩子。
这是我使用的多浏览器功能
function addEventHandler(obj,eventName,handler){
if (document.addEventListener){
obj.addEventListener(eventName,handler,false);
} else if (document.attachEvent){
obj.attachEvent("on"+eventName,handler);
}
}
creat an array for tyhe bew elementsa and divs;
var elements = new Array();
var newDivsShort = new Array();
var newDivsLong = new Array();
then in your for loop you can,
for (var i = 0 ; i<=history.length; i++)
{
newDivsShort[i] = document.createElement('div');
newDivsLong[i] = document.createElement('div');
elements[i] = document.createElement('li');
newDivsShort[i].className = "short";
newDivsLong[i].className = "long";
elements[i].appendChild(newDivsShort[i]);
elements[i].appendChild(newDivsLong[i]);
addEventHandler(elements[i],click,copyShortURL(history[i].shortURL));
}
您可能必须使用类似于 timeOUT 函数的格式来传递参数。