Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Разворачиваются все блоки сразу 
:(
    Опции темы
serezhka1986
Дата 13.1.2012, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 215
Регистрация: 12.6.2009

Репутация: нет
Всего: 0



Есть функция разворачивающая / сворачивающая блоки:
Код

$(document).ready(function(){
        $('.spoilerCaption').click(function(){
            $block_div = $(this).parent().children('div.spoilerContent').css("display");
            if ($block_div == "block") {
                $(this).css("background-image", "url(/images/down.png)");    
            }
            else
            {
                $(this).css("background-image", "url(/images/up.png)");
            }
            $(this).parent().children('div.spoilerContent').toggle('normal');
            $(this).blur();
            return false;
        });
    });

Но мне необходимо чтобы блок разворачивался по событию onclick, поскольку контент страницы может менятся, поэтому написал так:
Код

function razvorot() {
        $block_div = $('.spoilerCaption').parent().children('div.spoilerContent').css("display");
            if ($block_div == "block") {
                $('.spoilerCaption').css("background-image", "url(/images/down.png)");    
            }
            else
            {
                $('.spoilerCaption').css("background-image", "url(/images/up.png)");
            }
            $('.spoilerCaption').parent().children('div.spoilerContent').toggle('normal');
            $('.spoilerCaption').blur();
            return false;        
}

Но теперь проблемма: при клике на блок, разворачиваются все блоки с классом spoilerContent, а не тот который мне нужен. Как поправить такую ошибку?
--------------------
Для некоторых лучший способ написать что-нибудь осмысленное - это сесть жопой на клавиатуру... 
PM   Вверх
ksnk
Дата 13.1.2012, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



$(this) внутри обработчика .click указывает на объект, по которому кликнули
$('.spoilerCaption') указывает на ВСЕ объекты с классом .spoilerCaption. 
Какая надобность заставила переписать функцию и в какое место удалось ее запихать?


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
serezhka1986
Дата 13.1.2012, 12:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 215
Регистрация: 12.6.2009

Репутация: нет
Всего: 0



Есть JS код, который добавляет новый div с таким же классом. А когда он подгружается, то он уже не разворачивается. По-этому думал решить такую задачу с помощью события onclick

Это сообщение отредактировал(а) serezhka1986 - 13.1.2012, 12:13
--------------------
Для некоторых лучший способ написать что-нибудь осмысленное - это сесть жопой на клавиатуру... 
PM   Вверх
ksnk
Дата 13.1.2012, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



$('.spoilerCaption').live('click',function()...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
serezhka1986
Дата 13.1.2012, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 215
Регистрация: 12.6.2009

Репутация: нет
Всего: 0



 smile  Примного благодарен! Работает!
Есть еще вопрос. Если в хедере JS который выводит всплывающие подказки tipTip:
Код

<script type="text/javascript">
$(function(){
$(".logotipstIT").tipTip({defaultPosition:"right", fadeIn:500, fadeOut:500, delay:800, content:"Наш логотип"});
});
$(function(){
$(".linkhint").tipTip({edgeOffset:5});
});
$(function(){
$(".monithint").tipTip({defaultPosition:"right"});
});
</script>

Он так же не работает на подгруженных блоках. Его можно тоже как-то подключить на новых divах?
--------------------
Для некоторых лучший способ написать что-нибудь осмысленное - это сесть жопой на клавиатуру... 
PM   Вверх
ksnk
Дата 13.1.2012, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



Цитата(serezhka1986 @  13.1.2012,  12:35 Найти цитируемый пост)
. Его можно тоже как-то подключить на новых divах? 

Вероятно, нужно смотреть документацию по плагину.  


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
serezhka1986
Дата 13.1.2012, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 215
Регистрация: 12.6.2009

Репутация: нет
Всего: 0



Решил вот таким образом, может это и неправильно, укажите на ошибку если что.  smile 
Когда вывожу новый контент (несколько блоков класса spoilerCaption), то после закрытия последнего тега </div> дописал:
Код

...
</div>

<script type="text/javascript">
$(function(){
$(".monithint").tipTip({defaultPosition:"right"});
});
</script>


Так работает.  smile 
--------------------
Для некоторых лучший способ написать что-нибудь осмысленное - это сесть жопой на клавиатуру... 
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1474 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.