Поправить спойлер jq

SocMaster

Профессор
Регистрация
26 Июл 2011
Сообщения
211
Реакции
49
Есть спойлер на jq
Идеально работает но, когда спойлеров несколько и открываешь 1, открываются все :((
Пробовал подставить ид поста к див классу, не помогает.
Помогите пожалуйста
Вот скрипт
Код:
<script type="text/javascript">
var $jq = jQuery.noConflict();
    function ys(){
    $jq('._c').slideDown(500);
    $jq('.v').attr('onclick','ys2();');
    }
    function ys2(){
    $jq('._c').slideUp(500);
    $jq('.v').attr('onclick','ys();');
    }
 
 
</script>
HTML:
<div class="thanks_yekki" id="spoiler">
<div class="v" onclick="ys();">Сказали спасибо: <b>11</b>
<a id="spasibo" href="">Сказать спасибо!</a>
</div><div class="_c"></div></div>
Код:
<style type="text/css"> 
#spoiler {border:1px solid #ccc;} 
.v {background:#f7f7f7; padding:8px;cursor:pointer; } 
#spasibo {float:right;} 
._c {background:#fff;padding:8px;border-top:1px dotted #ccc;display:none;} 
</style>
 
а вы можете генерировать уникальный id для див элемента?

если да то, тогда можно сделать
<div id="ololo" class="_c"></div></div>
Код:
<script type="text/javascript">
var $jq = jQuery.noConflict();
    function ys(){
    $jq('#ololo').slideDown(500);
    }
    function ys2(){
    $jq('#ololo').slideUp(500);
    }
 
 
</script>
 
а вы можете генерировать уникальный id для див элемента?

если да то, тогда можно сделать

Код:
<script type="text/javascript">
var $jq = jQuery.noConflict();
    function ys(){
    $jq('#ololo').slideDown(500);
    }
    function ys2(){
    $jq('#ololo').slideUp(500);
    }
 
 
</script>

Сделал так
Код:
            <script type="text/javascript">
var $jq = jQuery.noConflict();
    function ys(){
    $jq(\'#'.$pid.'\').slideDown(500);
    }
    function ys2(){
    $jq(\'#'.$pid.'\').slideUp(500);
    }
 
</script>
Циферки подставляем верно
Записал див так
Код:
<div id="'.$pid.'" class="_c"  >тут моя переменная</div>
Но не пашет нифига, консоль пустая ошибок нет
Вот тут демка Для просмотра ссылки Войди или Зарегистрируйся
 
вы ещё забыли добавить строки где привязывается клик, хотя странно что по айди оно не сработало, чтоб долго не разбираться попробуйте оставить оригинальный код, только использовать не айди а css+айди для названия стиля. как для элэмента так и для кода.

тоесть
<div id="'.$pid.'" class="_c _с'.$pid.'" >тут моя переменная</div>
а потом
PHP:
<script type="text/javascript">
 
var $jq = jQuery.noConflict();
 
function ys()
{
$jq('._c.$pid.').slideDown(500);
$jq('.v').attr('onclick','ys2();');
}
 
function ys2()
{
$jq('._c.$pid.').slideUp(500);
$jq('.v').attr('onclick','ys();');
}
</script>
 
Пробовал уже по разному нифига(
Делаю уже так Для просмотра ссылки Войди или Зарегистрируйся
Демка тут( Для просмотра ссылки Войди или Зарегистрируйся где спасибо)
Я вижу как onclick меняется после клика. но реакции 0 и консоль пустая
 
Пробовал уже по разному нифига(
Делаю уже так Для просмотра ссылки Войди или Зарегистрируйся
Демка тут( Для просмотра ссылки Войди или Зарегистрируйся где спасибо)
Я вижу как onclick меняется после клика. но реакции 0 и консоль пустая
давайте в личку фтп, поэксперементируем
 
Поставил на демке Для просмотра ссылки Войди или Зарегистрируйся работает о.о о.о
Как так?

Ладно придумаю что то на обычном js
Все таки двиг не хочет никак дружить с квери наверное
 
Назад
Сверху