[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Блокировка ссылок
l@pteff
всем привет, подскажите плиз как можно по щелчку на определенном элементе (div) сделать недоступными ссылки? Пробовал через disabled но почему-то не блокируются

$('div.my_class').live('click', function() {
$('a.blocked_links').attr('disabled', true);
});
Игорь_Vasinsky
нет такого атриббута у ссылок
зато есть

     $('div.my_class').live('click', function() {
$('a.blocked_links').attr('onclick', 'return false');
});


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
l@pteff
Игорь_Vasinsky, спс, но остался ещё вопрос: а можно ли какой-то отдельный div сделать полностью недоступным, т.е. например есть блок с множеством ссылок, имеющих стили :hover и т. д. но чтоб скажем по клику мышью это всё становилось недоступно и блок был как бы "readonly"?
Игорь_Vasinsky
http://jquery-docs.ru/traversing/children/

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
l@pteff
спасибо, но остался ещё момент: есть блоки

<div class="answers"></div>
<div
class="answers"></div>
<div
class="answers"></div>
<div
class="answers"></div>

при клике на любой из блоков нужно его фон сделать оранжевым, и после этого по другим дивам сколько ни кликай нужно их оставить дефолтным цветом (серым). Но что-то не получилось, создаю специальный класс:

.answers_block {background-color:#ddd}

Итак при первом клике по диву делаю его оранж

$('.answers').live('click', function() {
$(this).css('background-color', 'orange');
$('.answers').not(this).addClass('answers_block'); /*здесь пытаюсь присвоить остальным дивам серый цвет, но так конечно не работает, а ничего особо в голову не приходит */
});

Подскажите пожалуйста, как лучше это сделать?
Quieteroks
l@pteff
Читай справку, там что с parent() нужно провернуть, чтоб найти тот самый блок, который сделать оранжевый.

Как то так:

$('.answers').live('click', function() {
$(this).parent('.answers').css('background-color', 'orange');
$('.answers').not(this).addClass('answers_block'); /*здесь пытаюсь присвоить остальным дивам серый цвет, но так конечно не работает, а ничего особо в голову не приходит */
});
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.