2015-08-28 83 views
0

如何製作一個觸發CSS多次翻譯的按鈕?Jquery多次翻譯按鈕

<button>CLICK</button> 

// CLICK 
$(document).ready(function() { 

$('button').click(function (event) { 
    event.preventDefault(); 

    if (button clicked once) { 

     $('section').css({'-webkit-transform':'translateY(100%) '}); 

    } else if (button clicked second time) { 

     $('section').css({'-webkit-transform':'translateY(200%)'}); 

    } else if (button clicked second time) { 

     $('section').css({'-webkit-transform':'translateY(300%)'}); 
    }   

    return false; 
}); 
}); 

或者也許有其他的方法來使CSS翻譯? PS我知道我可以代替的.css .addclass

+0

你爲什麼不只是採取'counter'變量,並將其提高到每一次'+ 1'當你點擊一個按鈕! –

回答

3

你可以試試這個: -

var count = 1; 
$('button').click(function (event) { 
    event.preventDefault(); 
    $('section').css({ 
     '-webkit-transform': 'translateY(' + (100 * count) + '%) ' 
    }); 
    count += 1; 
}); 
  • 第一次button點擊count是1,所以平移Y將對應於100*1=100%
  • 二時間count會加1,因此translateY將爲100*2=200%
  • 等等......
+0

謝謝!這對我有用 –

+0

很高興幫助! –

+0

我想知道是否有可能製作另一個按鈕,可以向不同的方向翻譯?像下一個和上一個按鈕。 –

1

// CLICK 
 
var clickCount = 0; 
 
$('button').click(function(event) { 
 
    event.preventDefault(); 
 
    clickCount -= 1; 
 
    if (clickCount >= -3) { 
 
    var percentage = clickCount + '00%'; 
 
    $('section').css({ 
 
     '-webkit-transform': 'translateY(' + percentage + ') ' 
 
    }); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
 
<button>CLICK</button> 
 
<br/><br/><br/><br/> 
 
<section>Abcd</section>

+0

那不是'-webkit-transform':'translateY('+ clickcount + '00%)'? – mplungjan

+0

這可能是我想要的,但它會翻譯下來,我需要翻譯 –

+1

@ user3609605然後將其設置爲翻譯負數量''-webkit-transform':'translateY( - '+ percentage +')''看看小提琴:http://jsfiddle.net/qsf0tcg8/ –