今天我正在認真地掙扎。如何將一個變量傳遞給jQuery timeout
我需要傳遞的變量,或甚至更好的對象,到超時本身(例如):
$('.x').each(function()
{
setTimeout(function()
{
alert ($(this).attr('id'))
},10000);
});
顯然發生的事情是在超時不具有參照原$(this)
幫助?
今天我正在認真地掙扎。如何將一個變量傳遞給jQuery timeout
我需要傳遞的變量,或甚至更好的對象,到超時本身(例如):
$('.x').each(function()
{
setTimeout(function()
{
alert ($(this).attr('id'))
},10000);
});
顯然發生的事情是在超時不具有參照原$(this)
幫助?
this
是上下文敏感的(並且是不同的a_jQuery_object.each
比在window.setTimeout
,但它的參考可以被複制到一個不同的變量,是不是上下文敏感的,這是常規使用that
用於此目的。
$('.x').each(function() {
var that = this;
setTimeout(function() {
alert ($(that).attr('id'))
},10000);
});
感謝標記爲格式 – Bob 2010-04-21 14:36:49