2013-08-07 17 views
2

我想使用jQuery和Textillate.js設置動畫文本,但只能使用.click()一次;它需要刷新瀏覽器以點擊時爲文字設置動畫。我希望有人能幫幫忙。jQuery點擊功能只有在嘗試使用Textillate.js動畫時纔會工作一次

我的HTML:

<h1 class="test">Im so handome!</h1> 

這是JavaScript

var asdf = $('.test'); 
asdf.click(function() { 
    asdf.textillate({ 
     in: { 
      effect: 'bounceIn' 
     } 
    }); 
}); 
+1

從我所看到的,只是爲了'in'動畫,並點擊它的完成之後將可能無法正常工作。 –

+0

您是否嘗試過定義動畫? –

+0

你想連續彈跳嗎? –

回答

3

您應該在點擊函數之外初始化textillate插件,然後在點擊函數中觸發api。

這應該工作:

var asdf = $('.test'); 
asdf.textillate({ 
    autoStart: false, 
    in: { 
     effect: 'bounceIn' 
    } 
    }); 
var api = asdf.data('textillate'); 

asdf.click(function() { 
    api.start(); 
}); 
+2

或者,您可以調用'asdf.textillate('開始')'而不需要保存數據對象。 – jschr

0

試試這個

var asdf = $('.test'); 
asdf.click(function() { 
    setInterval(function(){ 
    asdf.textillate({ 
    in: { 
     effect: 'bounceIn' 
    }}, 200); 
    }); 
}); 

200是每200毫秒爲單位之後的動畫。

+0

不收費..它仍然動畫一次 – iwanttolearn

相關問題