У меня есть список меню:
и я использую плагин адреса, чтобы иметь назад/вперед вдоль ajax, но у меня есть немного ошибки, которую я не могу исправить.
Когда я нажимаю на меню, если страница имеет прокрутку, это перемещает страницу, пока меню не появляется в начале страницы, но мне не нужен он, делают это.
Существует ли метод для отключения этого поведения?
Большое спасибо.
Создайте или измените обработчики click()
для ссылок, чтобы они использовали метод preventDefault()
.
Например:
$("a").click
(
function (evt)
{
//YOUR CODE HERE
evt.preventDefault();
return false;
}
);
'href="#about"' ссылается на элемент с id 'about'. поэтому страница перемещается
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"></script>
</head>
<body>
<div id="datosResultado">
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
</div>
<ul id="yourMenu">
<li><a href="#about" id="about">about</a></li>
<li><a href="#products" id="products">products</a></li>
<li><a href="#farm" id="farm">farm</a></li>
<li><a href="#gallery" id="gallery">gallery</a></li>
<li><a href="#contacts" id="contacts">contacts</a></li>
</ul>
<div id="you-click"></div>
</body>
<script type="text/javascript">
$(function(){
$("#yourMenu>li>a").bind("click", function(ev){
ev.stopPropagation();
//...your code...
$("#you-click").html($(this).html());
return false;
});
});
</script>
попробуйте добавить к своим ссылкам следующее:
onclick="return false;"
Поскольку вы, вероятно, добавляете обработчик событий к этой ссылке для события щелчка. Просто добавьте return false в его конец, а не прямо в тег HTML.
Как сказал Андрес Дескальцо, это происходит потому, что у них одинаковый id, а затем в href. Поэтому мне просто нужно изменить id тегов a
<a href="#about" id="_about">ՄԵՐ ՄԱՍԻՆ</a>
<a href="#products" id="_products"> ԱՐՏԱԴՐԱՆՔ</a>
....................................................
это решает всю проблему.
Спасибо всем за внимание и идеи;)