Показать сообщение отдельно
  #4 (permalink)  
Старый 11.10.2010, 01:35
Новичок на форуме
Отправить личное сообщение для Улугбек Посмотреть профиль Найти все сообщения от Улугбек
 
Регистрация: 10.10.2010
Сообщений: 4

$(function(){
$('.div1').each(function(){
if(/block/.test($.cookie('demo'))){ //тут делаем проверку
$(this).next().addClass('block');

Ой по торопился радоваться, если этот код использовать для нескольких элементов 'div1' то из-за this она берет и у всех с этим классом класс и меняет, то есть если один видим то становятся видимы все и на оборот, я попробовал с id вот так

style>
#div1, #div2, #div3, #div4 {width: 200px; height: 30px;}
#div1 {background: red;}
#div2 { background: green;}
#div3{background-color:#000;}
#div4{ background: #3C0;}
.block {display: none;}
</style>

<script>
$(function(){
$('#div1,#div3').each(function(){
if(/block/.test($.cookie('demo'))){ //тут делаем проверку
$(this).next().addClass('block');
}
$(this).click(function(){
$(this).next().toggleClass('block');
$.cookie('demo', $(this).next().attr('class'), {expires: 10});
});
});
});
</script>
</head>
<body>
<div id="div1"></div>
<div id="div2"></div>
<div id="div3"></div>
<div id="div4"></div>
</body></html>

Но нет тот же эффект this то все равно '#div1,#div3' как укахать конкретный элемент?
Ответить с цитированием