【发布时间】:2010-11-01 12:27:20
【问题描述】:
我有以下幻灯片面板,我使用教程等拼凑在一起......
$(document).ready(function() {
$(".dropdown dt a").click(function() {
$(".dropdown dd #panel").slideDown(150);
});
$(".dropdown dd #panel a").click(function() {
$(".dropdown dd #panel").slideUp(150);
});
var myTimeout = null;
$(".dropdown").bind("mouseleave", function() {
myTimeout = window.setTimeout(function() {
$(".dropdown dd #panel").slideUp(150); // <-- 1000ms
}, 1000);$('.dropdown dt a').removeClass('active');
});
$(".dropdown dd #panel").bind("mouseenter",function() {
window.clearTimeout(myTimeout);
});
});
但是我不知道如何点击来调出面板。
当前您单击面板会向下滑动,您进入面板然后退出面板会向上滑动。
我想补充一点,一旦你点击了显示面板,你也可以点击关闭它?
所以你有两种方法可以关闭它,将鼠标移开,或再次单击按钮。也许添加一个活动类,这样我就可以有一个箭头或改变打开然后关闭的东西?
有人帮我添加点击后退功能吗?
如果可以的话非常感谢:)
Thanks guys.
Brian 尝试添加您的代码,但设法完全破坏它,我显然没有把它放在正确的位置:(
编辑
正在添加 Brians 的建议...
$(document).ready(function() {
$(".dropdown dt a").click(function(){
if($(".dropdown dd #panel").hasclass('open'){
$(".dropdown dd #panel").slideDown(150).addClass('open');
} else {
$(".dropdown dd #panel").slideUp(150).removeClass('open');
}
});
$(".dropdown dd #panel a").click(function() {
$(".dropdown dd #panel").slideUp(150).removeClass('open');;
});
var myTimeout = null;
$(".dropdown").bind("mouseleave", function() {
myTimeout = window.setTimeout(function() {
$(".dropdown dd #panel").slideUp(150); // <-- 1000ms
}, 1000);$('.dropdown dt a').removeClass('active');
});
$(".dropdown dd #panel").bind("mouseenter",function() {
window.clearTimeout(myTimeout);
});
});
【问题讨论】:
标签: jquery animation panel toggle slide