2015-10-17 154 views

回答

5

這不起作用,因爲您的幻燈片很可能是超鏈接的。

爲了解決這個問題,複製粘貼此代碼定製的

(function() { 

if(!('ontouchend' in document)) return; 
var pageX, pageY, newX, newY, linked; 

jQuery('.rev_slider').on('touchstart', function(event) { 

    newX = newY = false; 

    var target = jQuery(event.target), 
    clas = target.attr('class'); 
    event = event.originalEvent; 

    if(event.touches) event = event.touches[0]; 
    pageX = event.pageX; 
    pageY = event.pageY; 

    if(target.is('a') || target.closest('a').length) linked = target; 

}).on('touchmove', function(event) { 

    event = event.originalEvent; 
    if(event.touches) event = event.touches[0]; 

    newX = event.pageX; 
    newY = event.pageY; 
    if(Math.abs(pageX - newX) > 10) event.preventDefault(); 

}).on('touchend', function(event) { 

    if(newX !== false && Math.abs(pageX - newX) > 30) { 

     eval('revapi' + jQuery(this).closest('.rev_slider_wrapper').attr('id').split('rev_slider_')[1].split('_')[0])[pageX > newX ? 'revnext' : 'revprev'](); 

    } 
    else if((linked && newY === false) || (linked && Math.abs(pageY - newY) < 10)) { 

     linked = linked.is('a') ? linked : linked.closest('a'); 
     if(linked.length) { 

      if(linked.attr('target') === '_blank') {  
       window.open(linked.attr('href')); 
      } 
      else { 
       window.location = linked.attr('href'); 
      } 

     } 

    } 

    linked = newX = false; 

});})(); 

這個問題也很好的Themepunch記錄(插件的作者)http://www.themepunch.com/faq/mobile-touch-swipe-slide-links-5-0/

+1

哇,非常感謝你!這麼快!它的工作完美 – xmen404

+0

我有一個問題,其中嵌入Youtube視頻的幻燈片無法滑動(在視頻上 - 你可以在視頻的側面滑動) - 這個腳本似乎也修復了這個問題。 希望我不會忽略此腳本可能導致的任何影響。 – Wayfarer

3

Slider Revolution Touch Settings

的滑塊設置JavaScript部分

根據developer's documentation的定義,您可以在導航面板下的滑塊設置中手動啓用和禁用垂直拖動。

+0

這是正確的答案。謝謝。 – Cody