Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.09.2010, 19:48
Аспирант
Отправить личное сообщение для Randomizer Посмотреть профиль Найти все сообщения от Randomizer
 
Регистрация: 21.08.2010
Сообщений: 55

Как добраться до объекта внутри div#?
Есть такая структурка из двух блоков типа div#item:

<div id="item" class="new">
<div class="button"></div>
<div class="text">REALLY TEXT IS HERE!</div>
<div class="otherinfo"></div>
</div>

<div id="item" class="new">
<div class="button"></div>
<div class="text">OTHER TEXT IS HERE!</div>
<div class="otherinfo"></div>
</div>


и к нему Jquery:

$(function() {
         $('.button').click(function() {
		$('.text').slideDown(300);
        });
});


Но по нажатию на div.button открываются div.text обоих блоков, а нужно что бы открывался только тот, на который я нажал через div.button

другими словами: мне нужно как то добраться до объекта (имеющего одинаковый класс с другими), который находится внутри родительского блока на кнопку которого я нажал.

На подобии механизма аккордеона.
Ответить с цитированием
  #2 (permalink)  
Старый 20.09.2010, 19:51
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

$('.button').click(function() {
        $(this).next(".text").slideDown(300);
});


и идентификаторы должны быть уникальными
Ответить с цитированием
  #3 (permalink)  
Старый 20.09.2010, 20:54
Аспирант
Отправить личное сообщение для Randomizer Посмотреть профиль Найти все сообщения от Randomizer
 
Регистрация: 21.08.2010
Сообщений: 55

Спасибо! Но не работает назначение класса с таким же подходом почему-то... =(
$(this).next('.otherinfo').removeClass('otherinfo');
$(this).next('.otherinfo').addClass('minus');
Ответить с цитированием
  #4 (permalink)  
Старый 21.09.2010, 13:33
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

Потому что у элемента уже удалён через .removeClass() класс otherinfo и выборка .otherinfo не находит ни одного элемента.
Ответить с цитированием
  #5 (permalink)  
Старый 21.09.2010, 18:05
Аспирант
Отправить личное сообщение для Randomizer Посмотреть профиль Найти все сообщения от Randomizer
 
Регистрация: 21.08.2010
Сообщений: 55

$(this).next('#theotherinfo').removeClass('otherinfo');
$(this).next('#theotherinfo').addClass('minus');


но так тоже не пашет =((
Ответить с цитированием
  #6 (permalink)  
Старый 21.09.2010, 18:56
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

У элемента может быть много классов, записываются они через пробел.
Ответить с цитированием
  #7 (permalink)  
Старый 23.09.2010, 22:16
Аспирант
Отправить личное сообщение для Randomizer Посмотреть профиль Найти все сообщения от Randomizer
 
Регистрация: 21.08.2010
Сообщений: 55

$('.button').click(function() {
        $(this).next(".text").slideDown(300);
});


проблема в том, что .next работает для элементов ВНЕ родительского контейнера, то-есть:

<div class="cont">
  <div class="text">Text here</div>
</div>

<div class="outelem"></div>


div.text не раскроется т.к. находится внутри div.cont
но если указать для раскрытия (slideDown) div.outelem, то будет работать.... вот собственно в чем моя загвоздка.
У меня кнопка на открытие текстового поля находится в родительском контейнере вместе с этим текстом =(
Ответить с цитированием
  #8 (permalink)  
Старый 24.09.2010, 10:02
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

.children( "div.text" );


Оно?
Ответить с цитированием
  #9 (permalink)  
Старый 24.09.2010, 12:01
Аспирант
Отправить личное сообщение для Randomizer Посмотреть профиль Найти все сообщения от Randomizer
 
Регистрация: 21.08.2010
Сообщений: 55

Сообщение от exec Посмотреть сообщение
.children( "div.text" );


Оно?
воот оно)) спасибо большое)) не знал - буду знать
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка события элемента внутри создавшего его объекта pauluss Общие вопросы Javascript 10 10.09.2010 17:01
Навигация внутри DOM. Как это сделать нормально? master_alf Events/DOM/Window 10 09.04.2010 10:18
Как по событию вызвать метод определенного экземпляра объекта jvs jQuery 3 24.12.2009 16:04
Как убрать выделение в Опере у div, получившего фокус ? spa_2002 Opera, Safari и др. 5 03.09.2009 10:42
Можно ли получить имя экземпляра объекта внутри самого объекта? Ichigeki Общие вопросы Javascript 9 14.11.2008 19:00