這是一個所有做前端都會遇到的問題;
布局是這樣的,有一個寬高100px背景為紅的div,默認是display:none 隱藏狀態;
給兩個a標簽綁定的同一個click事件,改變div的display為block;讓其顯示;
但是第一個a標簽點擊后div剛出現立馬就沒有了;第二個a標簽點擊后div會正常顯示;
初遇到這個問題的時候,馬虎點的童鞋可能要迷茫很久都找不到原因,而細心點就會發現是a標簽點擊后頁面刷新了,所以閃過;
一部分童鞋始終不知道怎么阻止a標簽跳轉,於是就換用其他標簽,避免給a標簽添加click事件;
但是呢,總還有一部分喜歡鑽研的童鞋,如果你正好看到這,恭喜你,下面就是來帶你脫離苦海的;
其實很簡單;就是給a標簽的href寫空事件javascript:;
<a href="javascript:;" onclick="test()">點我會正常顯示</a>
完整代碼如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>阻止a標簽點擊跳轉</title>
<style type="text/css">
.box{
width: 100px;
height: 100px;
background: red;
display: none;
}
</style>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
function test(){
$('.box').css('display', 'block');;
}
</script>
</head>
<body>
<a href="" onclick="test()">點我會一閃而過</a>
<br>
<br>
<a href="javascript:;" onclick="test()">點我會正常顯示</a>
<div></div>
</body>
</html>
需要注意的是別打成中文和全角狀態下的 冒號和分號;