阻止a標籤預設行為的幾種簡單方法
阿新 • • 發佈:2019-02-12
寫這篇文章的契機是由於公司最近一個系統專案,基於dwz框架做的。框架內部獲取內容的原理是使用ajax的load()方法來做的。所以自然會涉及到給定的元素的要先遮蔽其連結跳轉,然後再使用ajax的原理進行內容載入和讀取。
如下所示:
方法1:
<a href="http://www.baidu.com" id="test" onclick="stop()"> Click Me </a>
首先需要遮蔽掉a元素的預設跳轉事件,然後再根據自己的需求寫需要點選之後進行的操作。
程式碼如下:
function stop(event){
//IE和Chrome下是window.event 火狐下是event
event = event || window.event;
if(event.preventDefault){
event.preventDefault();
}else{
event.returnValue = false;
}
//target才是點選的元素 IE和谷歌下是srcElement 火狐下是target
var target = event.target || event .srcElement;
//獲取元素內部元素
alert(target.innerHTML);
};
方法2:
<a href="http://www.baidu.com" id="test"> Click Me </a>
var test = document.getElementById('test');
function stopDefault( e )
{
if ( e && e.preventDefault )
e.preventDefault();
else
window.event.returnValue = false;
}
test.onclick = function(e)
{
stopDefault(e);
}
其實上兩種方法原理一樣。
方法3:
<a href="javascript:void(0)" id="test" onclick="stop()"> Click Me </a>
直接遮蔽掉href屬性裡面的跳轉連結,將要進行的操作寫在方法裡面即可。