2011-11-14 37 views
2

我已經在這裏看到了關於這個問題的問題,但是我有一個不同的問題試圖讓它工作。動態添加classname到Colorbox

使用下面的代碼,我想添加一個classname到彩盒的lightbox一旦打開。

由於某種原因,雖然第二個函數(其中.addclass被執行)不起作用(當我檢查螢火蟲中的代碼時,它甚至沒有輸入該函數)。

 $(document).ready(function(){ 
      $(".box1").colorbox(function(){ 
       $("#colorbox").addClass("box1"); 
      }); 
     }); 

這是我失蹤的東西還是我想這樣做不正確嗎?

感謝伊恩

回答

9

UPDATE:

新版本彩盒的支持可以被用來添加額外的類名新className setting到彩盒。


原來的答覆:

你需要指定的OnOpen回調顏色框是這樣的:

$(document).ready(function(){ 
     $(".box1").colorbox({onOpen: function(){ 
      $("#colorbox").addClass("box1"); 
     }}); 
    }); 

也有使用回調來監聽cbox_open事件的選項,而不是 - 有關更多信息,請參閱http://jacklmoore.com/colorbox/

+0

完美,謝謝!回調是我現在所追求的,因爲我想從頁面上的3個不同元素調用colorbox併爲每個colorbox添加不同的類名。我相信我可以通過事件聆聽使它更加優雅,但稍後會進行調查。 – herbs

3

按照ColorBox上的EventHook部分嘗試此操作。

$(document).bind('cbox_complete', function(){ 
    $("#colorbox").addClass("box1"); 
}); 
3

這將這樣的伎倆,這是一個新的屬性:

$('.my-box').colorbox({className: 'my-class'});