************************阻止默認行爲*************************html
IE: event.returnValue = false;程序員
FF: e.preventDefault();瀏覽器
兼容: return false; //使用這種方式綁定的時候必定要加returndom
<a href="http://www.baidu.com" onclick="return test(event);">跳到百度1</a>函數
一.超連接的默認行爲-跳轉this
<a href="http://www.baidu.com" onclick="return test(event);">跳到百度1</a>htm
a標籤.onclick = function(){對象
return test(event);
}事件
二.阻止右鍵菜單彈出get
document.oncontextmenu = function(e){
//阻止默認行爲的代碼
}
三.阻止表單的默認行爲-提交
************************事件對象************************
對當前事件的一個具體描述 封裝到事件對象中,相似異常對象
一.xhtml 綁定方式
1. IE
用戶單擊按鈕, 單擊事件產生後 IE瀏覽器會隱式的建立一個事件對象 event
它是全局變量, 能夠直接使用event 或 window.event來訪問
2. FF
第一種綁定方式 火狐並不會隱式建立事件對象,須要程序員主動的給事件處理函數傳入一個事件對象event
二. dom 綁定方式
1.IE
和第一種綁定方式同樣
2.FF
也會隱式的建立事件對象, 只不過這個事件對象 不是全局變量 , 做爲事件處理函數的第一個參數傳遞過來的
************************得到事件對象的第二種方式(瞭解)************************
e = e||event
************************演示: 小球移動************************
**********************************事件源************************
第一種方式
function getEventSource (e) {
var eventSource = null;
if(document.attachEvent){
eventSource = event.srcElement;
}else{
eventSource = e.target;
}
return eventSource;
}
第二種方式(瞭解)
e=e ||event;
eventSource = e.srcElement || e.target;
第三種 this
*****************************************this********************************************
一. 普通函數中
this 指向的是 window 對象
二.用在事件處理函數中
指向是事件源
若是是第一種綁定方式 在事件處理函數 test() 中 打印this 把test()函數當作普通函數用的...
三. 若是用在自定義類中
this 當前對象