Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.06.2013, 16:02
Профессор
Отправить личное сообщение для Dimaz Посмотреть профиль Найти все сообщения от Dimaz
 
Регистрация: 25.12.2009
Сообщений: 222

Применить ко всем элементам кроме текущего.
Всем привет! Написал такой код. Почему он начинает считать индекс с первого элемента на странице, а не с первого параграфа? До параграфа идет тег b. Так вот он его тоже считает. http://jsfiddle.net/meaJK/
$('p').click(function(){
    alert($(this).index());
for(var i=0,a=$(this).index(); i<3; i++){
    if(i==a){continue}
$('p.hand:eq('+i+')').css("color","red");
}
});
Ответить с цитированием
  #2 (permalink)  
Старый 02.06.2013, 16:09
Профессор
Отправить личное сообщение для Dimaz Посмотреть профиль Найти все сообщения от Dimaz
 
Регистрация: 25.12.2009
Сообщений: 222

Вопрос закрыт, нашел решение. Нужно было указать селектор параграфа и добавить параметр this в метод index().
a=$('p').index(this);
Ответить с цитированием
  #3 (permalink)  
Старый 02.06.2013, 16:12
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

зачем тут цикл и проверки? это все есть в JQ

$('p').click(function() {
    $('p').not(this).css('color', 'red');
});


http://jsfiddle.net/meaJK/2/
Ответить с цитированием
  #4 (permalink)  
Старый 02.06.2013, 16:18
Профессор
Отправить личное сообщение для Dimaz Посмотреть профиль Найти все сообщения от Dimaz
 
Регистрация: 25.12.2009
Сообщений: 222

Сообщение от melky Посмотреть сообщение
зачем тут цикл и проверки? это все есть в JQ

$('p').click(function() {
    $('p').not(this).css('color', 'red');
});


http://jsfiddle.net/meaJK/2/
Спасибо большое! Искал решение на jquery, не нашел. Еще раз большое спасибо!
Ответить с цитированием
  #5 (permalink)  
Старый 02.06.2013, 16:30
Профессор
Отправить личное сообщение для Dimaz Посмотреть профиль Найти все сообщения от Dimaz
 
Регистрация: 25.12.2009
Сообщений: 222

Еще вопросик. А как сделать, чтобы, если уже свойство было применено, при повторном нажатии ничего не происходило? Только метод one не предлагать. Так как данные на страницу загружаются динамически ajax-запросом. Следовательно обработчик не обновится.
Еще. Проверять определен ли атрибут style не подойдет. Так как он уже определен до этого, только с другим цветом.
Ответить с цитированием
  #6 (permalink)  
Старый 02.06.2013, 16:59
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Dimaz Посмотреть сообщение
Еще вопросик. А как сделать, чтобы, если уже свойство было применено, при повторном нажатии ничего не происходило? Только метод one не предлагать. Так как данные на страницу загружаются динамически ajax-запросом. Следовательно обработчик не обновится.
Еще. Проверять определен ли атрибут style не подойдет. Так как он уже определен до этого, только с другим цветом.
делать отдельный CSS класс для цвета и выносить все стили в CSS
Ответить с цитированием
  #7 (permalink)  
Старый 02.06.2013, 17:19
Профессор
Отправить личное сообщение для Dimaz Посмотреть профиль Найти все сообщения от Dimaz
 
Регистрация: 25.12.2009
Сообщений: 222

Цитата:
делать отдельный CSS класс для цвета и выносить все стили в CSS
Так это нужно будет по всем параграфам проходить, проверять есть ли атрибут. Заранее ведь не известно у каких стоит. Может метку какую-нибудь можно поставить, что свойства были применены. Например в div в котором они находятся. Только в виде чего эту метку сделать?
Ответить с цитированием
  #8 (permalink)  
Старый 02.06.2013, 17:47
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Dimaz Посмотреть сообщение
Так это нужно будет по всем параграфам проходить, проверять есть ли атрибут. Заранее ведь не известно у каких стоит. Может метку какую-нибудь можно поставить, что свойства были применены. Например в div в котором они находятся. Только в виде чего эту метку сделать?
можно родителю класс дать (или атрибут) .. или вообще на него делегирующий обработчик клика повесить, чтобы искать параграфы только в этом div'е
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
применение свойств ко всем элементам Vampir3 Общие вопросы Javascript 27 26.06.2012 17:02
поиск по всем элементам murad30 Элементы интерфейса 5 07.10.2011 14:51
Как применить css ко всем элементам внутри блока MaxB jQuery 12 28.05.2010 07:56
Как добавить метод ко всем элементам? zubr80 Events/DOM/Window 3 06.04.2009 05:46