## 綁定事件 on(events, \[selector\], \[data\], fn)
概述:在選擇元素上綁定一個或多個事件的事件處理函數。
* events:一個或多個用空格分隔的事件類型和可選的命名空間。
* selector:一個選擇器字符串用于過濾器的觸發事件的選擇器元素的后代。
* data:當一個事件被觸發時要傳遞 event.data 給事件處理函數。
* fn:該事件被觸發時執行的函數。
~~~
// 點擊段落,彈框顯示段落內容
$("p").on("click", function(){
alert($(this).text());
});
// 點擊段落,向事件觸發函數傳遞參數
function myHandler(event) {
alert(event.data.foo);
}
$("p").on("click", {foo: "bar"}, myHandler);
// 表單點擊提交按鈕時,阻止表單執行默認提交
$("form").on("submit", function(event) {
event.preventDefault();
});
~~~
## 移除事件 off(events, \[selector\], \[fn\])
概述:在選擇元素上移除一個或多個事件的事件處理函數。
* events:一個或多個空格分隔的事件類型和可選的命名空間
* selector:一個最初傳遞到.on()事件處理程序附加的選擇器。
* fn:事件處理程序函數以前附加事件上
~~~
$("p").off(); // 移除段落的所有綁定事件
var foo = function () {// ...};
$("body").on("click", "p", foo);
// 移除段落添加的點擊事件
$("body").off("click", "p", foo);
~~~
## 一次性事件 one(type\[, data\], fn)
概述:為每一個匹配元素的特定事件綁定一個一次性的事件處理函數。
~~~
// 當所有段落被第一次點擊的時候,顯示所有其文本。
$("p").one("click", function(){
alert( $(this).text() );
});
~~~
## 觸發事件 trigger(type\[, data\])
概述:在每一個匹配的元素上觸發某類事件。
~~~
$("form:first").trigger("submit"); // 不點擊按鈕,代碼觸發提交表單
// 向事件函數傳遞參數
$("p").click(function(event, a, b) {
// 一個普通的點擊事件時,a 和 b 是 undefined 類型
// 如果用下面的語句觸發,那么 a 指向"foo",而 b 指向"bar"
}).trigger("click", ["foo", "bar"]);
~~~
## 觸發事件 triggerHandler(type\[, data\])
概述:這個特別的方法將會觸發指定的事件類型上所有綁定的處理函數。
~~~
<button id="old">.trigger("focus")</button>
<button id="new">.triggerHandler("focus")</button><br/><br/>
<input type="text" value="To Be Focused"/>
// 如果你對一個 focus 事件執行了 .triggerHandler() ,瀏覽器默認動作將不會被觸發,只會觸發你綁定的動作。
$("#old").click(function(){
$("input").trigger("focus");
});
$("#new").click(function(){
$("input").triggerHandler("focus");
});
$("input").focus(function(){
$("<span>Focused!</span>").appendTo("body").fadeOut(1000);
});
~~~
- 第一節:概述
- 第二節:核心
- 第一課時:核心函數
- 第二課時:對象訪問
- 第三課時:插件機制
- 第四課時:多庫共存
- 第三節:選擇器
- 第一課時:基本選擇器
- 第二課時:層級選擇器
- 第三課時:基本篩選器
- 第四課時:內容
- 第五課時:可見性
- 第六課時:屬性
- 第七課時:子元素
- 第八課時:表單
- 第九課時:表單對象屬性
- 第四節:屬性
- 第一課時:屬性
- 第二課時:CSS 類
- 第三課時:HTML 代碼、文本和值
- 第五節:篩選
- 第一課時:過濾
- 第二課時:查找
- 第六節:CSS
- 第一課時:CSS
- 第二課時:位置
- 第三課時:尺寸
- 第七節:事件
- 第一課時:頁面載入
- 第二課時:事件處理
- 第三課時:事件切換
- 第四課時:事件
- 第八節:文檔處理
- 第一課時:內部插入
- 第二課時:外部插入
- 第三課時:包裹
- 第四課時:替換
- 第五課時:刪除
- 第六課時:復制
- 第九節:效果
- 第一課時:基本
- 第二課時:滑動
- 第三課時:淡入淡出
- 第四課時:自定義
- 第十節:AJAX
- 第一課時:請求
- 第二課時:事件
- 第三課時:其他