2013-08-17 67 views
0

我有一個垂直jQuery滑塊的代碼blob。只是jQuery概率

基本上我需要的是,當#expert_button被點擊時,它會滑落,然後當它再次被點擊時,它會滑回去。

我已經從字面上嘗試了各種荒謬/無效的結果,包括不斷下滑,一切發生在頁面加載一次。你的名字。

在我接受另一種愛好選擇之前 - 指針的任何可能性我做錯了什麼?將被大力讚賞!

$('#expert_button').toggle(function() { 
$('#expert_slider').animate({ 
    top: '+=245' 
    }, 458, 'swing', function() { 
}), 
$('#expert_slider').animate({ 
    top: '-=245' 
    }, 458, 'swing', function() { 
    }); 
}); 
+1

您正在使用哪個版本的jQuery? –

+0

^在這裏檢查http://api.jquery.com/category/deprecated/deprecated-1.8/ – elclanrs

+0

哦,我正在使用10 ...是這種東西有點新 – user1448485

回答

0

嘿包括遷移庫。你可以從jquery.com下載它,並像包含jquery庫一樣包含它。包括migrate.js和你的代碼將工作

+0

感謝隊友 - 似乎沒有由於某種原因將其付諸行動?可能我做錯了什麼...... – user1448485

0

。利用這個clickToggle插件

(function ($) { 
    $.fn.clickToggle = function (func1, func2) { 
     var funcs = [func1, func2]; 
     this.data('toggleclicked', 0); 
     this.click(function() { 
      var data = $(this).data(); 
      var tc = data.toggleclicked; 
      $.proxy(funcs[tc], this)(); 
      data.toggleclicked = (tc + 1) % 2; 
     }); 
     return this; 
    }; 
}(jQuery)); 
$('#expert_button').clickToggle(function() { 
    $('#expert_slider').animate({ 
     top: '+=245' 
    }, 458, 'swing', function() {}) 
}, 

function() { 
    $('#expert_slider').animate({ 
     top: '-=245' 
    }, 458, 'swing', function() {}); 
}); 
+0

感謝您的幫助 - 對於像我這樣的新手來說,這可能有點忙碌 – user1448485

+0

http://jsfiddle.net/npwAz/1/查看這個演示可能會幫助您將來 –

0

如果你是一個簡單的滑動切換後,jQuery有應該是一個「捷徑」的方法:http://api.jquery.com/slideToggle/

下面是從API(jsFiddle)的樣品:

<button id="the-button">Toggle</button> 
<div id="the-panel"> 
    This is the paragraph to end all paragraphs. You 
    should feel <em>lucky</em> to have seen such a paragraph in 
    your life. Congratulations! 
</div> 
<script> 
    $('#the-button').on('click', function (e) { 
     $('#the-panel').slideToggle("slow"); 
    }); 
</script> 

如果包括寬鬆的圖書館,你也能共嬋娟把緩和功能變成更有趣的事情。

+0

Beaaaauuuutiful歡呼!像一個魅力工作 – user1448485

+0

@ user1448485太棒了。不要忘記投票和/或標記你的問題爲答案:http://stackoverflow.com/help/someone-answers –