9

jQuery UI'nin sekmeler widget'ında etkinlik dinleyicileri var mı?Olay dinleyicileri?

Şu anda hangi sekme dizininin etkin olduğuna bağlı olarak web sayfasındaki arka plan rengini değiştirmek istiyorum. Yani böyle bir şey (sözde kod):

$('.tabs').addEventListener(index, changeBackgroundImage); 

function changeBackgroundImage(index) { 
    switch (index) { 
     case 1: 
      $('body').css('background-image', '/images/backgrounds/1.jpg'); 
     break; 
     case 2: 
      $('body').css('background-image', '/images/backgrounds/2.jpg'); 
     break; 
     case 3: 
      $('body').css('background-image', '/images/backgrounds/3.jpg'); 
     break; 
     default: 
      $('body').css('background-image', '/images/backgrounds/default.jpg'); 
     break; 
    } 
}; 

Şimdiden teşekkürler.

$('#tabs').bind('tabsshow', function(event, ui) { 
    switch (ui.index){ 
    case 0: 
     $('body').css('background-image', '/images/backgrounds/1.jpg'); 
     break; 
    } 
}); 

cevap

0

Sekmeler eklentisi 0. bir sekme gösterildiği zaman ateşlenir bir 'şov' olay dan

1

Yep: "Etkinlikler"

Çalışma örnek altında http://jqueryui.com/demos/tabs/: http://jsfiddle.net/g7Q2L/ (Ben daha az kod ile birleştiğinde işaretlemeyi yapmak endeksi değerlerine gömülü değil kullanılan)

başlattığınız zaman

docs edin, size .bind("tabsselect", function(){})veya sekmeleri benim jsfiddle örnekte olduğu gibi initiliasing nesneye bir select özellik ekleyebilir.

12

Kullanım tabsactivate olay

$('#tabs').on('tabsactivate', function(event, ui) { 
    var newIndex = ui.newTab.index(); 
    console.log('Switched to tab '+newIndex); 
}); 
+0

Bu jquery ui v1.11.2 ile çalışır – userlond

17

o jquery ui ait en eski sürümü en artık select olayı desteklemez görünüyor.

Bu kod yeni sürümleri ile çalışır:

$('.selector').tabs({ 
        activate: function(event ,ui){ 
         //console.log(event); 
         console.log(ui.newTab.index()); 
        } 
}); 
İlgili konular