在匿名settimeout javascript函数中使用对象

在匿名settimeout javascript函数中使用对象,javascript,settimeout,Javascript,Settimeout,我想在一定时间(1.5秒)后从页面中删除单击的元素。 以下是代码(包括一些背景信息): Internet Explorer抱怨匿名函数中未定义目标。 如何在Internet Explorer中设置此超时?不要将字符串用于setTimeout。而是传递一个匿名函数(): 如果使用上述函数,则将在匿名函数内部使用target的当前值。如果传递字符串,浏览器将查找名为target的全局对象,该对象将失败,因为target是函数范围变量。setTimeout('target.parentNode.rem

我想在一定时间(1.5秒)后从页面中删除单击的元素。 以下是代码(包括一些背景信息):

Internet Explorer抱怨匿名函数中未定义目标。
如何在Internet Explorer中设置此超时?

不要将字符串用于
setTimeout
。而是传递一个匿名函数():


如果使用上述函数,则将在匿名函数内部使用
target
的当前值。如果传递字符串,浏览器将查找名为
target
的全局对象,该对象将失败,因为target是函数范围变量。

setTimeout('target.parentNode.removeChild(element);',1500)中的
元素是什么?我不知道。当我最初将代码插入脚本时,我一定忽略了这一点。
function AttachEvent(element, type, handler) {
    if (element.addEventListener) {
        element.addEventListener(type, handler, false);
    } else if (element.attachEvent) {
        element.attachEvent('on' + type, handler)
    } else {
        element['on' + type] = handler;
    }
}

AttachEvent(window, "load", function() {

    AttachEvent(mydiv, "click", do_stuff); 
});

function do_stuff(e){
    e = e || window.event;
    var target = e.target || e.srcElement;  

    //some stuff        

    //remove object
    setTimeout('target.parentNode.removeChild(element);', 1500);
}
function do_stuff(e){
    e = e || window.event;
    var target = e.target || e.srcElement;  

    //some stuff        

    //remove object
    setTimeout(function(){target.parentNode.removeChild(target);}, 1500);
}