gigahertz
Новичок
Дата регистрации:
29.10.2013 02:07:03
Сообщений: 12
есть вот такой вот "список":
<p><a class="show_but" href="0">key1</a></p>
<div class="list">vlaue1</div>
<p><a class="show_but" href="0">key2</a></p>
<div class="list">value2</div>
Нужно выбрать тег див который идет после тега <p> в котором есть тег <a> с класом "show_but". Не могу понять как...
$('.show_but').toggleClick(
function(eventObject){
$(this).attr('href', '1');
$('p > a[href=1 + .list').hide();
eventObject.preventDefault();
},
function(eventObject){
$(this).attr('href', '0');
$('p > a[href=0] + .list').show();
eventObject.preventDefault();
});
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Не думаю, что это возможно, поскольку тот же div следует не после p, а после пробелов и табуляций. Поэтому тут лучше просто поставить соответствующий класс у необходимых div (2 класса сразу тоже можно использовать).
gigahertz
Новичок
Дата регистрации:
29.10.2013 02:07:03
Сообщений: 12
спасибо Михаил, но я не сильно понял что вы имеете введу. Тоесть мне нужно хайдить или отображать блок при нажатии на ссылку в теге <p>. Если ставить блокам клас то он применяеться ко всем сразу, а мне нужно только к тому, что стоит после ссылки. Естественно если убрать тег <p> и написать $('a[href=1] + .list') то все работает отлично, но я работаю с CKeditor и он автоматически записывает все в тег <p> и я не знаю как с этим бороться. Может быть вы знаете как это исправить?
Проблему с CKeditor решил добавив в конфиг:
config.enterMode = CKEDITOR.ENTER_BR;
config.shiftEnterMode = CKEDITOR.ENTER_P;
надеюсь комуто поможет