Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Callback методов Jquery

Сообщения:  [1-10]   [11-15] 

 
 автор: Sfinks   (04.10.2013 в 10:07)   письмо автору
 
   для: Гавриленко Дмитрий   (03.10.2013 в 17:52)
 

1. Я не вижу опережения. Т.е. показываться блок начинает именно тогда, когда скрылся предыдущий.

2. Клик по тегу A вызывает переход. Если у вас фактически его не происходит, его нужно отменять:
$('a').click(function(e){
    e.preventDefault();
    .......
});
// либо
$('a').click(function(e){
    .......
    return false;
});

3. С установкой $img.click() - это вы перемудрили.... Устанавливая новый обработчик, старый никуда не девается.... Он не перезаписывается новым. Т.е. после нескольких кликов, у вас будет несколько обработчиков. Например попробуйте кликнуть "о нашей компании", затем вернуться, затем кликнуть "портфолио" и, не дожидаясь конца анимации, кликнуть по картинке.
Итак, старый обработчик либо нужно убирать сразу после клика по A, но тогда войдя в подменю, на верхний уровень уже не выйти, либо не связывать его с кликом A, а вынести отдельно, установить только один раз, и в нем уже проверять что нужно показать, а что скрыть.

  Ответить  
 
 автор: confirm   (03.10.2013 в 19:10)   письмо автору
 
   для: Гавриленко Дмитрий   (03.10.2013 в 19:05)
 

Оригинальная задумка. Я вам сказал - в том, в чем я не нахожу логики мне разбираться не охота, не вижу смысла в этом. Это тоже самое как знание того, что за миллиарды световых лет есть цивилизация, есть, ну и хорошо, но пользы практической от этого нет никакой.

  Ответить  
 
 автор: Гавриленко Дмитрий   (03.10.2013 в 19:05)   письмо автору
 
   для: confirm   (03.10.2013 в 19:02)
 

Нажимая на картинку меню возвращается.

  Ответить  
 
 автор: confirm   (03.10.2013 в 19:02)   письмо автору
 
   для: Гавриленко Дмитрий   (03.10.2013 в 18:58)
 

Мне ничего не понятно. Я вижу по коду - есть меню со ссылками, и при выборе любой из них меню скрывается. Если бы это была игра в прятки я бы мог это понять, иначе в моем понимании, это просто глупость.

  Ответить  
 
 автор: Гавриленко Дмитрий   (03.10.2013 в 18:58)   письмо автору
 
   для: confirm   (03.10.2013 в 18:43)
 

Ну там же все понятно. Сайт одностраничник. Не должно быть загрузки когда нажимаешь по ссылкам. Информация динамически меняется.

  Ответить  
 
 автор: confirm   (03.10.2013 в 18:43)   письмо автору
 
   для: Гавриленко Дмитрий   (03.10.2013 в 18:32)
 

Боже упаси гнать, как вы выражаетесь.
Щелкал да, но даже не щелкая ничего понятно главное - то что вы делаете лишено смысла. А какой смысл разбираться в том, что не имеет смысла?
Потому и дал ссылку, вот там есть смысл, и там тоже есть ошибка (выбор контактов), но в данном случае будет польза от поиска этой ошибки, и такая работа интересна. А вот в вашем коде, извините, можете считать как угодно, гоню я или еще нечто. Могу сказать почему, и описать подробно почему, но тратить время впустую не буду.

Может лучше вам описать словами чего же вы хотите, типа ТЗ?

  Ответить  
 
 автор: Гавриленко Дмитрий   (03.10.2013 в 18:32)   письмо автору
 
   для: confirm   (03.10.2013 в 18:10)
 

Вы сами попробовали переходить по ссылкам в примере, что я прикрепил? При всем Уважение к Вам, я не согласен с тем, что вы гоните на меня. Я показывал этот код не одному программисту, которые разбираются в JQuery. Все просто махали головой в стороны не понимая почему так происходит. По этому я и обратился сюда как к авторитетному источнику. Может вы поможете мне исправить мой код JQuery?

  Ответить  
 
 автор: confirm   (03.10.2013 в 18:10)   письмо автору
 
   для: Гавриленко Дмитрий   (03.10.2013 в 17:52)
 

В основе всех эффектов лежит таймер, а передача в пост-обработчик происходит только по завершению анимации, условие завершения которой и проверяется в таймере. То есть вызов callback функции ранее запланированного не произойдет.
$(function(){
   $('a').click(function(){ 
        $($(this).attr('href')).slideDown(500, function(){
             $('#txt').text('END'); 
        }); 
   });
});    
</script>

<nav> 
<a href="#art_1">First</a> 
</nav> 
<article id="art_1"> Текст текст</article>
<div id="txt"></div>


Если в этом примере в DIV появится текст ранее окончания анимации, значит все не правы, а ваши утверждения истины.
Всякие ляпсусы происходят не потому, что таймер анимации плюнул на условие и прекратил работу, а потому, что пишут код не понимая того, что пишут.

Вы даже библиотеку подключаете не понятно откуда, взгляните на свой код. И попутно, взгляните на пример одностраничного сайта, например этот. Тут оправдано применения якорей, и анимация при выборе в меню вполне логична.
Где логика и смысл в том, что вы делаете?

  Ответить  
 
 автор: confirm   (03.10.2013 в 17:59)   письмо автору
 
   для: Гавриленко Дмитрий   (03.10.2013 в 17:17)
 

Нормально, пишите какой-то абсурд, и надо догадаться чего у вас на самом деле должно быть?

  Ответить  
 
 автор: Гавриленко Дмитрий   (03.10.2013 в 17:52)   письмо автору
453.8 Кб
 
   для: confirm   (03.10.2013 в 15:36)
 

Посмотрите сами. Код простейший. Перейдите сначала по одной, потом по другой ссылке. Изображение возвращает в меню.

  Ответить  

Сообщения:  [1-10]   [11-15] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования