Нашел скрипку в стеке и сыграл с ней немного, чтобы удовлетворить наши потребности.
Но .. Мне нужно, чтобы "tab" находился под контейнером div, чтобы изменить текст в зависимости от состояния. то есть. если открытый текст должен сказать «закрыть» и наоборот, а другой элемент скрыт.
Я предполагаю, что мы сможем добавить условие if к js. Просто немного застрял.
Скрипка здесь: http://jsfiddle.net/ozzy/zEcXp/
Код: Js
$(document).ready(function(){
$("div#panel").show();
var autoTimer = null;
autoTimer = setTimeout(function(){
$("div#panel").slideDown("slow");
autoTimer = setTimeout(function(){
$("div#panel").slideUp("slow");
}, 5000);
},2000);
$("#open").click(function(){
$("div#panel").slideDown("slow");
if(autoTimer) clearTimeout(autoTimer);
autoTimer = null;
});
$("#close").click(function(){
$("div#panel").slideUp("slow");
if(autoTimer) clearTimeout(autoTimer);
autoTimer = null;
});
});
код: html
<div id="widget">
<div id="panel">Slidepanel<br />Slidepanel<br />Slidepanel</div>
<div id="open">Open</div>
<div id="close">Close</div>
</div>
код: CSS
#widget {position:relative;width:500px;height:100%;}
#panel{height:100px;background:#fafafa;border:1px solid #cccccc;z-index:1;}
#open {cursor:pointer;position:absolute;left:50%;
padding:0px 8px;
border-left:1px solid #cccccc;
border-right:1px solid #cccccc;
border-bottom:1px solid #cccccc;
border-top:1px solid #ffffff;
z-index:2;}
#open:hover ,#close:hover {color:#3399ff;}
#close {cursor:pointer;position:absolute;left:50%;bottom:0px;}
Код очень грубый, я понимаю, что мы можем сократить путь к CSS и т. Д. Но сделали это таким образом, чтобы вы могли увидеть проблему.
Напомним, что я доволен позицией TAB, просто нужно показать Open или Closed в зависимости от состояния Panel. Так что показывайте только открытую вкладку и делайте ее активной, если панель закрыта, и наоборот.
Приветствие.
.ps просто интересно, будет ли переключение работать лучше. Но в любом случае .. давайте сначала исправим это