jQuery 正在取消超链接的默认事件操作

标签 jquery events hash click default

我已使用 jQuery 将 .click() 处理程序分配给 anchor 元素以创建动画效果。该链接会更改哈希值,然后由 AJAX 系统处理。问题是,当我分配 .click() 事件函数时,哈希不再自动更改。我可以使用 document.location.hash = "hash"手动更改它,但 Firefox 似乎不喜欢这样做。它可以工作,但当我从历史记录中加载页面时,它的行为很奇怪。

有其他人遇到过这样的问题吗?

<a href="#test">Test</a>

$('a[href="#test"]').click(function(){
 $(this).doSomething();
});

最佳答案

而不是你的实际代码,尝试这样的事情

<a href="#test" class="sample">Test</a>

$(".sample").click(function()
{
  alert("href clicked"); // do your animation here
  return false;
}

关于jQuery 正在取消超链接的默认事件操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5189236/

相关文章:

javascript - 如何使用 JQuery 设置 onclick 监听器

javascript - 在页面上拖放文件时如何设置文件输入值?

javascript - 为什么这个增加字体大小的 JavaScript 代码在 Firefox 中有效,但在 Chrome 中无效?

javascript - 使用日期范围选择器时的日期和时间不正确

javascript - 为什么 location.reload() 会破坏我的 $.post?

javascript - 如何激活模式以在所有 3 个按钮上单击而不是只用一个按钮打开?

hash - sha512 可以保护您免受极其简单的密码的侵害吗?

go - 哈希字符串的有限并行性

perl - 在 Perl 中如何使用 map() 将操作应用于散列的每个元素?

javascript - 输入值和字符串变量的连接