2012-05-15 125 views
0

我使用這個jQuery顯示懸停的一些信息:使用jQuery插件掛鉤

jQuery(document).ready(function() { 
    jQuery('.promo_slider_wrapper').hover(function() { 
      jQuery('.promo_slider_excerpt').animate({right: 0, opacity: 1}, 500); 
     }, 
     function() { 
      jQuery('.promo_slider_excerpt').animate({right: -320, opacity: 1}, 500); 
    }); 
}); 

我用這對「促進滑塊」 WordPress插件,它的偉大工程。只有客戶希望信息在幻燈片加載時顯示,而不是懸停。我正在使用的插件有一個「動作鉤子」,它在幻燈片載入中被調用。動作鉤子是「promoslider_content」。

那麼如何使用「promoslider_content」動作鉤子來觸發動畫而不是我目前的「懸停」功能呢?

回答

0

我最終通過編輯插件來解決此問題(然後更改插件名稱,以便它們不更新並覆蓋我的自定義)。這不是最好的解決方案,但它的工作。

promo_slider.js(起始於線161):

// Add/Remove classes 
currentItem.removeClass('current'); 
jQuery('.promo_slider_excerpt').animate({right: -260, opacity: 1}, 200); 
newItem.addClass('current'); 
currentSpan.removeClass('current'); 
newSpan.addClass('current'); 

// Fade in/out 
currentItem.fadeOut('fast', function(){ 
newItem.fadeIn('fast'); 
jQuery('.promo_slider_excerpt').animate({right: 0, opacity: 1}, 500); 
}); 
0

如果你不需要懸停部分,那麼你應該能夠包含函數內容,它將立即運行。

jQuery(document).ready(function() { 
    jQuery('.promo_slider_excerpt').animate({right: 0, opacity: 1}, 500); 
}); 

但隨後的動畫將不會返回到-320,這將當你移動鼠標移出已經發生了正常。你可以設置一些類型的間隔計時器來做到這一點。

+0

這並不工作,因爲它只有在動畫的第一張幻燈片。當一張新幻燈片淡入時,它只是坐在那裏,內容發生變化。我在想這就是這個動作鉤來的地方。計時器可能會工作,但它是動態的(用戶可以從cms更改滑動時間),所以我試圖不去硬編碼。 – Brandon