2010-11-24 30 views
2

Je ne sais pas combien de personnes ici ont utilisé la bibliothèque Sencha Touch js, mais j'ai une question qui DOIT être simple malgré mes nombreuses tentatives et échoue . Fondamentalement, j'ai un carrousel qui pages à travers les résultats que vous balayez, et je veux déclencher une fonction chaque fois qu'une nouvelle page est affichée.
Quelqu'un a une idée de comment faire cela? J'ai essayé d'ajouter un écouteur, et pour une raison quelconque cela ne fonctionne pas. Quelque chose comme ceci:déclencher une fonction à exécuter lorsque la page d'un carrousel est modifiée dans Sencha Touch

var apCarousel = new Ext.Carousel({ 
      direction: 'horizontal', 
      activeItem: 0, 
      ui: 'dark', 
      itemId : "apCarousel", 
      items: pageItems, 
      listeners : { 
       click : { 
        element : this, 
        fn : function(){alert('yo!');} 
       } 
      } 
     }); 

Toute aide serait grandement appréciée. Merci.

Répondre

4

Utilisez l'événement cardswitch:

Ext.setup({ 
    onReady: function(){ 
     new Ext.Carousel({ 
      fullscreen: true, 
      listeners: { 
       cardswitch: function(container, newCard, oldCard, index){ 
        console.log(container, newCard, oldCard, index); 
       } 
      }, 
      items: [{ 
       html: 'a' 
      },{ 
       html: 'b' 
      },{ 
       html: 'c' 
      }] 
     }); 
    } 
}); 
+0

parfait, merci! Je savais que ça devait être relativement simple. – Munzilla

0

J'ai eu le même problème, essayez d'ajouter l'auditeur comme:

listeners: { 
      cardswitch: 
      { 
       fn: function() 
       { 
        alert(this.getActiveIndex()); 
       } 
       }, 
      }