2013-03-23 42 views
1

我使用Hammer.js允許在窗格之間拖動。我還希望允許在可以點擊(使用鼠標)或觸摸(在觸摸屏上)的「下一步」按鈕的情況下執行替代操作,該操作會自動將幻燈片動畫到下一個屏幕。在鼠標點擊時觸發Hammer.js拖/放行爲

想象一下Hammer.js Carousel demo在頁面中間有一個「下一個」按鈕。當你點擊時,它就好像你做了一個滑動把你帶到下一個窗格。

我想我應該能夠像觸發:

var hammertime = Hammer('button.next-button').on("tap", function(event) { 
    self.next();   
}); 

這似乎只是把我的鼠標變成拖動模式,而不是執行整個動畫。

回答

4

我遇到了同樣的問題。 self.next()顯然不起作用,因爲下一個函數沒有在self元素中定義。

您需要initizalize一個新的圓盤傳送帶實例,然後調用showPane(index)方法:

 var hammertime = Hammer(doubletapRegion).on("tap", function (event) { 
      console.log(event); 
      var carousel = new Carousel("#carousel"); 
      carousel.init(); 
      carousel.showPane(1); 
     }); 

此代碼將移動至第二個窗格(索引= 1)。你當然可以在那裏放置一個變量。

+0

謝謝 - 這正是我所需要的。我在$('button.next-button')上調用它,點擊(function(){'然後從鏈接上的data屬性獲取當前窗格,然後將其傳遞給'showPane'。 – Voodoo 2013-04-16 19:36:37

+0

優秀的答案。 – 2013-05-14 10:24:58

相關問題