Я очень новичок в jQuery (я начал этим утром), и меня смущает, что именно запускает функцию, переданную в функцию готовности.
Согласно документации jQuery [http://docs.jquery.com/Events/ready#fn] функция готовности
Связывает функцию, которая будет выполнена
всякий раз, когда ДОМ готов
пройденный и управляемый.
Какие события могут привести к тому, что дерево DOM будет готово для прохождения? В частности, я применяю функцию ready ко всему дереву документов:
<script type="text/javascript">
$(document).ready(function(){
$("p + p").hide ();
$("a").click(function(event){
$("p + p").toggle ();
event.preventDefaults ();
});
});
</script>
Похоже, что эта функция вызывается не только при первой загрузке страницы, но и в результате нажатия на гиперссылку.
HTML содержит несколько абзацев, а $("p + p").hide ();
приводит к тому, что все, кроме первого, будут скрыты при загрузке страницы. У меня есть гиперссылка, встроенная в первый абзац, которую я хочу использовать для отображения оставшихся абзацев.
Однако, похоже, что нажатие на гиперссылку (<a href="">Read more...</a>
) приводит к тому, что предоставленная функция готова к повторному выполнению, что скрывает мои абзацы сразу после их отображения.
Это тот случай, когда действие внутри щелчка заставляет весь DOM документа снова быть готовым к повторному просмотру? Или вся страница загружена браузером? Любая идея будет принята с благодарностью.
С уважением,
Owen.