jQuery學習5 jQuery事件模型
更新時間:2010年02月07日 10:13:34 作者:
jQuery 事件模型相關資料,需要的朋友可以參考下。
jQuery事件模型的功能有:
提供建立事件處理程序的統(tǒng)一方法;
允許在每個元素上為每個時間類型建立多個處理程序;
采用標準的事件類型名稱,例如click或mouseover;
使用Event實例可用作處理程序的參數(shù);
對Event實例的最常用的屬性進行規(guī)范化;
為取消事件和阻塞默認操作提供統(tǒng)一方法。
jQuery綁定事件處理程序:
bind()命令
$('img').bind('click',funciton(event){alert('Hi there');}); 該語句為頁面上的圖片綁定已提供的內聯(lián)函數(shù),作為點擊事件處理程序。
建立事件處理程序,無需瀏覽器特定代碼
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>jQuery Events Example</title>
<script type="text/javascript" src="../scripts/jquery-1.2.1.js">
</script>
<script type="text/javascript">
$(function(){
$('#vstar')
.bind('click',function(event) {
say('Whee once!');
})
.bind('click',function(event) {
say('Whee twice!');
})
.bind('click',function(event) {
say('Whee three times!');
});
});
function say(text) {
$('#console').append('<div>'+text+'</div>');
}
</script>
</head>
<body>
<img id="vstar" src="vstar.jpg"/>
<div id="console"></div>
</body>
</html>
刪除事件處理程序unbind(event,listener),unbind(event)
從包裝集的所有元素中刪除可選的已傳遞參數(shù)所指定的事件處理程序。如果不提供參數(shù),則從元素中刪除所有的監(jiān)聽器(即事件處理程序)
起切換作用的監(jiān)聽器toggle()
toggle(listenerOdd,listenerEven)把已傳遞函數(shù)建立為包裝集所有元素的一對click事件處理程序,每當觸發(fā)click事件就相互切換。
每當點擊事件發(fā)生時,調用互補的監(jiān)聽器
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>jQuery Toggle Command Example</title>
<script type="text/javascript" src="../scripts/jquery-1.2.1.js">
</script>
<script type="text/javascript">
$(function(){
$('#vstar').toggle(
function(event) {
$(event.target).css('opacity',0.4);
},
function(event) {
$(event.target).css('opacity',1.0);
}
);
});
</script>
</head>
<body>
<img id="vstar" src="vstar.jpg"/>
</body>
</html>
在元素上方懸停鼠標指針hover(overListener,outListener)建立已匹配元素的mouseover和mouseout事件處理程序。這些處理程序當兒僅當元素所覆蓋區(qū)域被進入和退出時觸發(fā),忽視鼠標指針從父元素到子元素上的遷移
鼠標停留事件
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Hover example</title>
<link rel="stylesheet" type="text/css" href="hover.css">
<script type="text/javascript"
src="../scripts/jquery-1.2.1.js"></script>
<script type="text/javascript">
function report(event) {
$('#console').append('<div>'+event.type+'</div>');
}
$(function(){
$('#outer1')
.bind('mouseover',report)
.bind('mouseout',report);
$('#outer2').hover(report,report);
});
</script>
</head>
<body>
<div class="outer" id="outer1">
Outer 1
<div class="inner" id="inner1">Inner 1</div>
</div>
<div class="outer" id="outer2">
Outer 2
<div class="inner" id="inner2">Inner 2</div>
</div>
<div id="console"></div>
</body>
</html>
提供建立事件處理程序的統(tǒng)一方法;
允許在每個元素上為每個時間類型建立多個處理程序;
采用標準的事件類型名稱,例如click或mouseover;
使用Event實例可用作處理程序的參數(shù);
對Event實例的最常用的屬性進行規(guī)范化;
為取消事件和阻塞默認操作提供統(tǒng)一方法。
jQuery綁定事件處理程序:
bind()命令
$('img').bind('click',funciton(event){alert('Hi there');}); 該語句為頁面上的圖片綁定已提供的內聯(lián)函數(shù),作為點擊事件處理程序。
建立事件處理程序,無需瀏覽器特定代碼
復制代碼 代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>jQuery Events Example</title>
<script type="text/javascript" src="../scripts/jquery-1.2.1.js">
</script>
<script type="text/javascript">
$(function(){
$('#vstar')
.bind('click',function(event) {
say('Whee once!');
})
.bind('click',function(event) {
say('Whee twice!');
})
.bind('click',function(event) {
say('Whee three times!');
});
});
function say(text) {
$('#console').append('<div>'+text+'</div>');
}
</script>
</head>
<body>
<img id="vstar" src="vstar.jpg"/>
<div id="console"></div>
</body>
</html>
刪除事件處理程序unbind(event,listener),unbind(event)
從包裝集的所有元素中刪除可選的已傳遞參數(shù)所指定的事件處理程序。如果不提供參數(shù),則從元素中刪除所有的監(jiān)聽器(即事件處理程序)
起切換作用的監(jiān)聽器toggle()
toggle(listenerOdd,listenerEven)把已傳遞函數(shù)建立為包裝集所有元素的一對click事件處理程序,每當觸發(fā)click事件就相互切換。
每當點擊事件發(fā)生時,調用互補的監(jiān)聽器
復制代碼 代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>jQuery Toggle Command Example</title>
<script type="text/javascript" src="../scripts/jquery-1.2.1.js">
</script>
<script type="text/javascript">
$(function(){
$('#vstar').toggle(
function(event) {
$(event.target).css('opacity',0.4);
},
function(event) {
$(event.target).css('opacity',1.0);
}
);
});
</script>
</head>
<body>
<img id="vstar" src="vstar.jpg"/>
</body>
</html>
在元素上方懸停鼠標指針hover(overListener,outListener)建立已匹配元素的mouseover和mouseout事件處理程序。這些處理程序當兒僅當元素所覆蓋區(qū)域被進入和退出時觸發(fā),忽視鼠標指針從父元素到子元素上的遷移
鼠標停留事件
復制代碼 代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Hover example</title>
<link rel="stylesheet" type="text/css" href="hover.css">
<script type="text/javascript"
src="../scripts/jquery-1.2.1.js"></script>
<script type="text/javascript">
function report(event) {
$('#console').append('<div>'+event.type+'</div>');
}
$(function(){
$('#outer1')
.bind('mouseover',report)
.bind('mouseout',report);
$('#outer2').hover(report,report);
});
</script>
</head>
<body>
<div class="outer" id="outer1">
Outer 1
<div class="inner" id="inner1">Inner 1</div>
</div>
<div class="outer" id="outer2">
Outer 2
<div class="inner" id="inner2">Inner 2</div>
</div>
<div id="console"></div>
</body>
</html>
您可能感興趣的文章:
- jQuery事件之鍵盤事件(ctrl+Enter回車鍵提交表單等)
- 讓input框實現(xiàn)類似百度的搜索提示(基于jquery事件監(jiān)聽)
- jquery事件重復綁定的快速解決方法
- jquery事件與函數(shù)的使用介紹
- JQuery事件e參數(shù)的方法preventDefault()取消默認行為
- Jquery事件的連接使用示例
- jQuery事件綁定.on()簡要概述及應用
- jQuery事件 delegate()使用方法介紹
- jquery事件機制擴展插件 jquery鼠標右鍵事件。
- jquery事件機制擴展插件 jquery鼠標右鍵事件
- 從零開始學習jQuery (五) jquery事件與事件對象
- jQuery學習總結之jQuery事件
相關文章
jQuery實現(xiàn)輸入框郵箱內容自動補全與上下翻動顯示效果【附demo源碼下載】
這篇文章主要介紹了jQuery實現(xiàn)輸入框郵箱內容自動補全與上下翻動顯示效果,涉及jquery.autoComplete.js插件的使用,可實現(xiàn)輸入框內容自動補全的功能,附帶了完整的demo源碼供讀者下載參考,需要的朋友可以參考下2016-09-09jQuery處理json數(shù)據(jù)返回數(shù)組和輸出的方法
這篇文章主要介紹了jQuery處理json數(shù)據(jù)返回數(shù)組和輸出的方法,涉及jQuery操作數(shù)組及json的技巧,需要的朋友可以參考下2015-03-03如何確保JavaScript的執(zhí)行順序 之jQuery.html并非萬能鑰匙
在上一篇文章《如何確保JavaScript的執(zhí)行順序 - 之jQuery.html深度分析》中,我們揭示了jQuery.html函數(shù)之所以能在各種瀏覽器下保持動態(tài)JS順序執(zhí)行,其秘密在于 – 同步AJAX獲取外部JavaScript。2011-03-03