2010-04-12 33 views
1

我正在使用colorbox,我只是得到undefined作爲我的值?

$('.banner').colorbox({ 
    opacity: 0.4, 
    href: 'dialogs/ban_add_edit.php?banner_to_edit='+$(this).attr('id')+'&typeofbanner='+$(this).attr('rel')    
    }) 

回答

2

你可以這樣做:

$('.banner').each(function() { 
    $(this).colorbox({ 
    opacity: 0.4, 
    href: 'dialogs/ban_add_edit.php?banner_to_edit='+this.id+'&typeofbanner='+$(this).attr('rel')    
    }); 
}); 

在你當前的代碼this指的是不管你正在運行這,大概document.ready功能(讓this = document)。在此版本中,您正在循環使用.banner元素,而this指的是循環中的元素。

還有一個變化是this.id,我經常這樣做,但除非你需要不需要$(this).attr('id')來處理它後來被鏈接... this.id生DOM的風格是更短,更快:)

+0

工作一種享受,謝謝關於使用這個對象的提示 H – Haroldo 2010-04-12 12:17:04

+0

'this.rel'有什麼問題? – James 2010-04-12 13:05:19

+0

@ J-P:我不認爲IE喜歡它。 – Mottie 2010-04-12 13:08:40

相關問題