У меня есть 2 ссылки, которые скрывают настоящую информацию от пользователей на главной странице. При нажатии одной ссылки на экране появляется новая информация. Проблема в том, что когда я нажимаю на любую из ссылок, окно возвращается в начало страницы. Я бы хотел предотвратить это поведение, поскольку это раздражает.JQuery: Предотвращение прокрутки окна после нажатия ссылки
Вот код для ссылок
<div align="right" id="ajaxIncomingMail"><a href="#" class="incomingMail">Incoming Mail</a></div><div id="ajaxOutgoingMail"><h5><a href="#" class="outgoingMail">Outgoing Mail</a></h5></div>
и вот код JQuery:
$(function(){
$("a.incomingMail").click(function(e){
e.preventDefault();
$("#ajaxMailShowContentOutbox").hide();
$("#ajaxMailShowContentInbox").fadeIn("slow");
});
$("a.outgoingMail").click(function(e){
e.preventDefault();
$("#ajaxMailShowContentInbox").hide();
$("#ajaxMailShowContentOutbox").fadeIn("slow");
});
return false;
});
Здесь я использую preventDefault(), и это все еще не работает !? Я также попытался вернуть false, но это тоже не сработало. Я не знаю, имеет ли это значение, но информация, которая представлена, вытягивается с php из db. Как я могу сделать прокрутку, когда я нажимаю ссылку?
e.preventDefault() должен это сделать. Прокрутка страницы вверху или ее прокрутка из-за изменения содержимого на странице? – partkyle
Я согласен с Кевином Герни - он, вероятно, должен использовать .live(), если ссылки фактически добавляются на страницу после загрузки DOM и javascript уже выполнен. – Pandincus
partkyle, прокрутка происходит из-за изменения содержимого на странице. И нет, сами ссылки не меняются - меняется только контент, но не ссылки. – Johny