我有以下的滑動板,我已經拼湊起來使用教程等等jquery添加點擊向上滑動面板?
$(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.
嘗試添加代碼布賴恩但設法完全打破它,我顯然還沒有把它放到正確的地方:(
編輯非常感謝
添加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);
});
});
感謝球員們,我已經在Brian上面添加了您的建議,但是我已經設法完全打破它,我假設我把它放在了錯誤的地方:( – Jezthomp 2010-11-01 20:48:16
您可能需要更改班級名稱由'open'改爲'active'(我用'打開'用於演示目的。)如果你想在jsFiddle上發佈一個快速演示,或者你在這裏足夠標記和css(只要它專注於這個特定問題),這將有助於調試。 – 2010-11-01 20:58:58
我也注意到我的代碼片斷中的錯字(它應該是'hasClass'而不是'hasclass')。這就是當我沒有一個調試器編碼... – 2010-11-02 02:10:15