[英]HTML anchor tag with Javascript onclick event
在使用 Google 时,我发现他们在锚标签中使用 onclick 事件。
在 google header 部分的更多选项中,它看起来像一个普通的标签,但是点击它并没有被重定向而是打开了一个菜单。 通常在使用时
<a href='more.php' onclick='show_more_menu()'>More >>></a>
它通常会在不触发show_more_menu()
的情况下转到“more.php”,但我已经在该页面本身中显示了一个菜单。 怎么做像谷歌?
如果您的 onclick 函数返回 false,则默认浏览器行为被取消。 像这样:
<a href='http://www.google.com' onclick='return check()'>check</a>
<script type='text/javascript'>
function check()
{
return false;
}
</script>
无论哪种方式,谷歌是否这样做并不重要。 在 javascript 中绑定你的 onclick 函数会更干净——这样你就可以将你的 HTML 与其他代码分开。
您甚至可以尝试以下选项:
<a href="javascript:show_more_menu();">More >>></a>
据我了解,您不想在单击链接时重定向。 你可以做 :
<a href='javascript:;' onclick='show_more_menu();'>More ></a>
使用以下代码显示菜单而不是转到 href 地址
function show_more_menu(e) { if( !confirm(`Go to ${e.target.href} ?`) ) e.preventDefault(); }
<a href='more.php' onclick="show_more_menu(event)"> More >>> </a>
1) Link to work
<a href="#" onClick={this.setActiveTab}>
...View Full List
</a>
setActiveTab = (e) => {
e.preventDefault();
console.log(e.target);
}
即使javascript
function 返回任何值,也可以防止默认操作的另一种解决方案。
<a href="www.any-website.com" onclick='functionToRun();return false;'>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.