show hide что то типа табов
как решить подобную задачу?
$(blocks).hide(); должен выключать блоки с классом "blocks" после этого $(elem).show(); должен включать блок с id который передался с onclick="show_hide(***)" но не работает ! :( в чем тут дело? заранее спасибо и простите за глупость! эфект типа табов
<style type="text/css">
div.blocks{display:none; width:600px;height:200px;float:left;}
#one{background-color: green}
#two{background-color: pink}
#three{background-color: blue}
div.but{display:block; width:200px; height:100px; float:left; border:1px solid #333;}
</style>
<script type="text/javascript">
function show_hide(elem){
if( $(elem).css('display') == 'none' ){
$(blocks).hide();
$(elem).show();
} else {
$(elem).hide();
}
}
</script>
</head>
<body>
<div class="but" onclick="show_hide(one)">кнопка включения и выключения первого блока</div>
<div class="but" onclick="show_hide(two)">кнопка включения и выключения второго блока</div>
<div class="but" onclick="show_hide(three)">кнопка включения и выключения третьего блока</div>
<div style="clear:both;"></div>
<div class="blocks" id="one">one</div>
<div class="blocks" id="two">two</div>
<div class="blocks" id="three">three</div>
</body>
|
Цитата:
|
открывашка 201
demqn,
:-/
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
div.blocks{display:none; width:600px;height:200px;float:left;}
#one{background-color: green}
#two{background-color: pink}
#three{background-color: blue}
div.but{display:block; width:200px; height:100px; float:left; border:1px solid #333;}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
function show_hide(elem){
$('.blocks').not(elem).hide();
$(elem).toggle();
}
</script>
</head>
<body>
<div class="but" onclick="show_hide('#one')">кнопка включения и выключения первого блока</div>
<div class="but" onclick="show_hide('#two')">кнопка включения и выключения второго блока</div>
<div class="but" onclick="show_hide('#three')">кнопка включения и выключения третьего блока</div>
<div style="clear:both;"></div>
<div class="blocks" id="one">one</div>
<div class="blocks" id="two">two</div>
<div class="blocks" id="three">three</div>
</body>
</html>
|
о спасибо огромное, просто супер то что надо!
предполагал но не знал! а как к элементу <div class="but" onclick="show_hide('#one')">кнопка включения и выключения первого блока</div> принажатии класс присвоить ? сам попробую сделать вроде не сложно |
Цитата:
скажите пожалуйста как сделать чтобы еще чтобы при нажатии сама кнопка принимала какой нибудь класс для подстветки сам не справлюсь с jquery вообще все плохо еще хуже чем с javascript ) |
Цитата:
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
.active{background: #FFE4B5;}
div.blocks{display:none; width:600px;height:200px;float:left;}
#one{background-color: green}
#two{background-color: pink}
#three{background-color: blue}
div.but{display:block; width:200px; height:100px; float:left; border:1px solid #333;}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
function show_hide(event,elem){
$('.blocks').not(elem).hide();
$(elem).toggle();
$('.but').not(event.target).removeClass('active');
$(event.target).toggleClass('active');
}
</script>
</head>
<body>
<div class="but" onclick="show_hide(event,'#one')">кнопка включения и выключения первого блока</div>
<div class="but" onclick="show_hide(event,'#two')">кнопка включения и выключения второго блока</div>
<div class="but" onclick="show_hide(event,'#three')">кнопка включения и выключения третьего блока</div>
<div style="clear:both;"></div>
<div class="blocks" id="one">one</div>
<div class="blocks" id="two">two</div>
<div class="blocks" id="three">three</div>
</body>
</html>
|
СУПЕР! Всю голову сломал! как сделать не нашел
только тут и помогли СПАСИБО ВАМ ЗА ТО ЧТО ВЫ ЕСТЬ СУПЕР КАЧЕСТВЕННЫЙ САППОРТ:dance: :thanks: :D |
Открывашка - нормальный вариант подключения
demqn, открывашка 203
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
.active{background: #FFE4B5;}
div.blocks{display:none; width:600px;height:200px;float:left;}
#one{background-color: green}
#two{background-color: pink}
#three{background-color: blue}
div.but{display:block; width:200px; height:100px; float:left; border:1px solid #333;}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
$(function() {
var $but = $(".but"),
$blocks = $(".blocks");
$but.each(function(i, elem) {
var $el = $(elem);
$el.click(function() {
$but.not($el).removeClass("active");
$el.toggleClass("active");
$blocks.filter(function(j, el) {
i == j && $(el).toggle();
return i != j
}).hide()
})
})
});
</script>
</head>
<body>
<div class="but" >кнопка включения и выключения первого блока</div>
<div class="but" >кнопка включения и выключения второго блока</div>
<div class="but" >кнопка включения и выключения третьего блока</div>
<div style="clear:both;"></div>
<div class="blocks" id="one">one</div>
<div class="blocks" id="two">two</div>
<div class="blocks" id="three">three</div>
</body>
</html>
|
| Часовой пояс GMT +3, время: 17:50. |