Jquery 每当我单击任何锚元素时,窗口都会在Mobile中跳到顶部。
我正在制作响应式下拉菜单。它在笔记本电脑上运行得很好,但当我使用android手机点击下拉列表中的任何链接时,窗口会跳到顶部。我曾尝试在JQuery中使用preventDefault,但我认为下拉菜单是由CSS悬停操作支持的,这就是preventDefault方法不起作用的原因。知道我应该在JQuery中添加什么来防止这种情况吗,因为它非常烦人。 这里是链接。 我正在使用此脚本切换文本Jquery 每当我单击任何锚元素时,窗口都会在Mobile中跳到顶部。,jquery,responsive-design,dropdown,preventdefault,Jquery,Responsive Design,Dropdown,Preventdefault,我正在制作响应式下拉菜单。它在笔记本电脑上运行得很好,但当我使用android手机点击下拉列表中的任何链接时,窗口会跳到顶部。我曾尝试在JQuery中使用preventDefault,但我认为下拉菜单是由CSS悬停操作支持的,这就是preventDefault方法不起作用的原因。知道我应该在JQuery中添加什么来防止这种情况吗,因为它非常烦人。 这里是链接。 我正在使用此脚本切换文本 $(document).ready(function(){ $(".show-men
$(document).ready(function(){
$(".show-menu").click(function(){
if ($(this).text() == "Show Menu")
{
$(this).text("Close"); } else
{
$(this).text("Show Menu");
};
});
});
您可以使用
返回false除了.preventDefault()
之外,在的末尾单击(){}
以阻止默认操作 这是有效的
$(document).ready(function(){
$(".show-menu").click(function(e){
if ($(this).text() == "Show Menu")
{
$(this).text("Close"); } else
{
$(this).text("Show Menu");
};
});
e.preventDefault();
return false;
});
或者,您可以使用下面的代码删除css文件中的悬停函数
$("#menu li").hover(function(){
$(this).find("ul.hidden").fadeIn("fast");
}, function(){
$(this).find("ul.hidden").fadeOut("fast");
});
您可以尝试:$('#menu a')。在('click')上,函数(e){e.preventDefault();}可以工作。我使用的是preventDefault方法,但我的方法不正确。:)有什么方法可以使菜单顺畅地打开和关闭?不要使用anchor
标记,除非您希望它们被锚定到某个地方-另一页,当前页上的另一个地方。为什么不使用span
或按钮
元素?这样,您就不必在单击处理程序中使用return false
或e.preventDefault()
。我必须在此页面中使用锚定标记。因为我会将它们锚定到其他页面。但我会把你们的建议记在心里,以备将来之用:)我已经试过这种方法了。它不起作用。但是gaetanoM在第一条评论中提供的方法是有效的。有没有办法使菜单打开和关闭顺畅?到目前为止,它看起来相当流畅,但您是否尝试过悬停选项?试试这上面添加的代码我试过你的方法。我还添加了stop()方法。现在它工作顺利,我也在手机上检查过了。:)非常感谢