我有一个菜单列表:
<ul>
<li><a href="#about" id="about">ՄԵՐ ՄԱՍԻՆ</a></li>
<li><a href="#products" id="products" >ԱՐՏԱԴՐԱՆՔ</a></li>
<li><a href="#farm" id="farm" >ՏՆՏԵՍՈՒԹՅՈՒՆ</a></li>
<li><a href="#gallery" id="gallery" >ՆԿԱՐՆԵՐ</a></li>
<li><a href="#contacts" id="contacts">ՀԵՏԱԴԱՐՁ ԿԱՊ</a></li>
</ul>
我使用address插件沿着ajax返回/转发,但我有一个小错误,我无法修复。
当我点击菜单时,如果页面滚动,它会移动页面,直到菜单出现在页面顶部,但我不需要它。
是否有方法可以禁用此行为?
非常感谢。
答案 0 :(得分:9)
创建或修改click()
处理程序以获取使用preventDefault()
方法的链接。
例如:
$("a").click
(
function (evt)
{
//YOUR CODE HERE
evt.preventDefault();
return false;
}
);
答案 1 :(得分:7)
尝试将以下内容添加到您的链接中:
onclick="return false;"
因为你可能正在为click事件添加一个事件处理程序。只需将return false添加到它的末尾,而不是直接添加到HTML标记上。
答案 2 :(得分:1)
'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>
答案 3 :(得分:-3)
正如andres descalzo所说,因为他们拥有相同的身份,然后是href。所以我只需要更改a
标记
<a href="#about" id="_about">ՄԵՐ ՄԱՍԻՆ</a>
<a href="#products" id="_products"> ԱՐՏԱԴՐԱՆՔ</a>
....................................................
它解决了整个问题。
感谢大家的关注和想法;)