Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: jquery показ текущего спрятагного блока
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » jquery показ текущего спрятагного блока

Страниц (1): [1]
 

1. kvins - 12 Марта, 2011 - 21:00:42 - перейти к сообщению
выбирается из базы mysql заметки разделенные на 2 части
1 часть это название заметки со ссылкой
2 это часть это текст который по стилям спрятан с помощью display: none;

все заметки выводятся через цикл

Цитата:
echo "<div class='for_note'>";
while ($show_from_get = mysql_fetch_assoc ($look_in_get) ) {
printf ("
<div class='mini_note'><p class='fnote'>%s</p>
<form action='create_note.php'><input class='delete2' name='delete' type='submit'></form>
</div>

<div class='note'><p class='full_text'>%s</p>
<a class='delete2' href='#' >a</a>

</div>

", $show_from_get["title"],$show_from_get["text"]); }

echo "</div>";


при нажатии на ссылку включается этот скрипт

Цитата:
$('.fnote').click(function(){

$(this).fadeTo(1000, 0.3);
$('.note').css({
'display' : 'block',
'index' : '30'


});
});


проблема в том что код работает через class="note" и он показывает все блоки при нажатии , а так как все сделано в цикле то у каждой заметки тот же класс и видно только последнюю заметку
2. HotBird - 13 Марта, 2011 - 00:39:02 - перейти к сообщению
А если так:
$(this).fadeTo(1000, 0.3);
$(this).parent().next('.note').css({
'display' : 'block',
'index' : '30'
3. kvins - 13 Марта, 2011 - 09:41:18 - перейти к сообщению
хах спасибо =)
извиняюсь забыл а что вверху надо написать чтоб настройки сбивались,то есть у меня щас
все выбирается правильно но если я нажал самую последнюю заметку то все я уже не увижу остальные она их перекрывает
4. HotBird - 13 Марта, 2011 - 16:23:13 - перейти к сообщению
kvins пишет:
если я нажал самую последнюю заметку то все я уже не увижу остальные она их перекрывает

Это происходит когда вы проходитесь кликая по всем ссылкам подряд от первой к последней ?
5. kvins - 13 Марта, 2011 - 17:02:12 - перейти к сообщению
да. а когда опять пробую самую первую то все =)
6. HotBird - 13 Марта, 2011 - 23:14:43 - перейти к сообщению
Получается что вам надо пригашенные ссылки вернуть в первоначальгое состояние.
Тогда попробуйте так:
$('.fnote').click(function(){

$('.fnote').fadeTo(1000, 1);
$(this).fadeTo(1000, 0.3);
$(this).parent().next('.note').css({
'display' : 'block',
'index' : '30'


});
});
7. kvins - 13 Марта, 2011 - 23:49:00 - перейти к сообщению
так проблема не в первом элементе а во втором (
то есть когда мы включили 'display' : 'block', 'index' : '30' появляется второй блок
и самая последняя заметка перекрывает предыдущии
я понял что надо css ("display" ,"none" ) поставить тока не знаю куда его прикрутить =)



кстати еще вопрос вот там в скрипте который писал выше есть еще
Цитата:
<a class='delete2' href='#' >a</a>
тоже выводится циклом который при нажатии должен отправлять post чтоб удалить заметку , как сделать parent если функция next уже не будет работать
надо так ?
Цитата:
$(this).parent('.delete2')


то есть мне получается надо сделать ajax посылку текущего элемента
8. HotBird - 14 Марта, 2011 - 11:53:36 - перейти к сообщению
kvins пишет:
я понял что надо css ("display" ,"none" ) поставить тока не знаю куда его прикрутить =)

Туда же, куда и устанавливали css ("display" ,"block" ), тоисть
$('.fnote').click(function(){

$('.note').css ("display" ,"none" );
$(this).fadeTo(1000, 0.3);
$(this).parent().next('.note').css({
'display' : 'block',
'index' : '30'


});
});
9. JustUserR - 14 Марта, 2011 - 14:13:59 - перейти к сообщению
kvins пишет:
Проблема в том что код работает через class="note" и он показывает все блоки при нажатии , а так как все сделано в цикле то у каждой заметки тот же класс и видно только последнюю заметку
В качестве возможного метода решения предполагаемой задачи, заключающеся в определении целевого используемого визуализационного объекта, для которого обеспечивается операция изменения отображения, допустимо использование параметра его расположения в локальной DOM-модели
10. kvins - 15 Марта, 2011 - 15:47:14 - перейти к сообщению
хах опять почти тоже самое только теперь с ajax запросом (

кароче удалялись у меня заметки правильно, потом я перевел на ajax и теперь он удаляет самое последнее из списка
а написал я так

Цитата:
<input type='hidden' class='del_note' value = '%s'>


$('.delete2').click (function() {
alert ($('.del_note').val()); (это я проверял какую цифру он передавал и сравнивал с таблицей)

$(this).parent().next('.del_note') пробовал вот так и по обычному
$.post ("create_note.php", {

sel: $('.del_note').val()
}),

function(response) {
}
return false;
})
11. JustUserR - 16 Марта, 2011 - 16:42:55 - перейти к сообщению
kvins пишет:
И теперь он удаляет самое последнее из списка а написал я так
В качестве возможного критерия для осуществления определения целевого объекта модели документа, по отношению к его локальному расположению с однородными иерархическими группами элементов, допустимо использование свойства nextSibling

 

Powered by ExBB FM 1.0 RC1