原来的代码写的有点问题,改了下:function o(){
alert( "o" );
}o.prototype.set = function( value ) {
if ( document.readyState != "complete" )
{
alert( "n:" + value );
// window.setTimeout( this.set, 1000); // 这样不能传递参数
// window.setTimeout( function(){this.set(value)}, 1000); // 这样,这里的this不对
window.setTimeout( "this.set( '" + value + "' )", 1000); // 这样好象不能执行
return;
}
alert( "y:" + value );
};var a = new o();
a.set( "hello" );
alert( "o" );
}o.prototype.set = function( value ) {
if ( document.readyState != "complete" )
{
alert( "n:" + value );
// window.setTimeout( this.set, 1000); // 这样不能传递参数
// window.setTimeout( function(){this.set(value)}, 1000); // 这样,这里的this不对
window.setTimeout( "this.set( '" + value + "' )", 1000); // 这样好象不能执行
return;
}
alert( "y:" + value );
};var a = new o();
a.set( "hello" );
if ( document.readyState != "complete" )
{
alert( "n:" + value );
var self=this;
window.setTimeout(self.set(value), 1000);
return;
}
alert( "y:" + value );
};var a = new o();
a.set( "hello" );
if ( document.readyState != "complete" )
{
alert( "n:" + value );
var self=this;
window.setTimeout(function(){self.set(value)}, 1000);
return;
}
alert( "y:" + value );
};var a = new o();
a.set( "hello" );