我有这样的链接:

<a href="#" onclick="myfunc({a:1, b:'hi'})" />click</a>
<a href="#" onclick="myfunc({a:3, b:'jo'})" />click</a>

我想在myfunc()内部做一个preventDefault(),因为点击链接时会在地址栏中添加一个# (不做return false;href='javascript:void(0);')

这可能吗?

推荐答案

我相信您可以将event传递到函数inline中,该函数将是W3C兼容浏览器中引发事件的event对象(也就是说,旧版本的IE仍然需要在事件处理程序函数中进行检测才能查看window.event).

100.

function sayHi(e) {
   e.preventDefault();
   alert("hi");
}
<a href="http://google.co.uk" onclick="sayHi(event);">Click to say Hi</a>

  1. 按原样运行,注意在alert 后链接不会重定向到谷歌.
  2. 然后,将传递到onclick处理程序中的event更改为其他值,如e,单击Run,然后注意到重定向确实发生在alert 之后(结果窗格变为白色,演示了重定向).

Html相关问答推荐

单表单和多个提交(具有多个值)

有没有可能设置div的边框宽度相对于其父宽度和高度?'

删除第一个列表项上的左边框

在 Select 前后更改选项卡的背景

当溢出到滚动条中时, bootstrap 按钮样式会更改

如何影响flex项目中的flex-gap收缩顺序和文本换行顺序?

如何将内容元素放在侧边栏旁边?

IFRAME中的Chrome图像未调整大小

HTML中的ARIA标签:在元素内部还是外部?(&Q;

如何用背景色填充边框半径创建的间隙

如何设计缠绕锚点元素的样式?

嵌入最近的 YOUTUBE 视频(不是短片,视频)

带标签 css 的 div 内的中心图标

为什么盒子不在div中显示?

获取链接到功能的网页表单

BeautifulSoup用名称列表的findall无法找到另一个目标后面的目标

如何使用 Bootstrap Grid 系统修复大屏幕上图片和进度条之间的空白?

如何在图片前面放置下拉框?

让 Iframe 覆盖整个页面

如何使文本显示在页眉/页脚之外?