我有一个下拉菜单,使用jQuery中的slideUp
功能。我想知道我是否可以删除恒定速度并快速开始和结束缓慢。我环顾四周,阅读了easing
中的animate
方法,并尝试了该方法,但是它似乎对slideUp
无效,仅对animate
有效(如果我错了,请告诉我);但是否则,我似乎无法弄清楚。有任何想法吗?这是我当前的代码:
$(document).ready(function(){
var h = "fast";
$("[data-action='dropdown']").click(function(e) {
e.stopPropagation();
});
$("body").click(function() {
$("[data-action='dropdown'] ul ul").slideUp(h);
});
$("[data-action='dropdown'] ul li").click(function() {
$("[data-action='dropdown'] ul ul").slideUp(h);
$("ul", this).slideDown(h, function(){
$("ul", this).slideUp(h);
});
});
});
HTML是一个非常基本的下拉结构(只是ul
元素,其中li
s然后内部嵌套ul
s。然后在css中,将其隐藏到内部ul ul
用不显示任何内容,然后由jQuery切换)。
任何帮助将不胜感激! :-)
我们可以使用jQuery easing plugin执行此操作。
包括jQuery宽松Javascript文件:
https://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.4.1/jquery.easing.min.js
然后我们可以将宽松变量用作slideUp
函数中的参数。
Javascript
jQuery('#Example').slideUp({
duration: 1000,
easing: 'easeOutCubic'
});