Query 是為(wèi)事件處理特别設計的。
jQuery 事件函數(shù)
jQuery 事件處理方法是 jQuery 中的核心函數(shù)。
事件處理程序指的是當 HTML 中發生某些事件時(shí)所調用的方法。術(shù)語由事件“觸發”(或“激發”)經常會被使用。
通(tōng)常會把 jQuery 代碼放到 <head>部分的事件處理方法中:
實例
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("p").hide();
});
});
</script>
</head>
<body>
<h2>This is a heading</h2>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>
<button>Click me</button>
</body>
</html>
在上(shàng)面的例子中,當按鈕的點擊事件被觸發時(shí)會調用一(yī)個函數(shù):
$("button").click(function() { // some code... } )
該方法隐藏所有 <p> 元素:
$("p").hide();
單獨文件中的函數(shù)
如(rú)果您的網站包含許多頁面,并且您希望您的 jQuery 函數(shù)易于維護,那(nà)麽請(qǐng)把您的 jQuery 函數(shù)放到獨立的 .js 文件中。
當我們在教程中演示 jQuery 時(shí),會将函數(shù)直接添加到 <head> 部分中。不過,把它們放到一(yī)個單獨的文件中會更好,就像這(zhè)樣(通(tōng)過 src 屬性來引用文件):
實例
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="my_jquery_functions.js"></script>
</head>
jQuery 名稱沖突
jQuery 使用 $ 符号作(zuò)為(wèi) jQuery 的簡介方式。
某些其他(tā) JavaScript 庫中的函數(shù)(比如(rú) Prototype)同樣使用 $ 符号。
jQuery 使用名為(wèi) noConflict() 的方法來解決該問(wèn)題。
var jq=jQuery.noConflict(),幫助您使用自(zì)己的名稱(比如(rú) jq)來代替 $ 符号。
結論
由于 jQuery 是為(wèi)處理 HTML 事件而特别設計的,那(nà)麽當您遵循以下(xià)原則時(shí),您的代碼會更恰當且更易維護:
把所有 jQuery 代碼置于事件處理函數(shù)中
把所有事件處理函數(shù)置于文檔就緒事件處理器中
把 jQuery 代碼置于單獨的 .js 文件中
如(rú)果存在名稱沖突,則重命名 jQuery 庫
jQuery 事件
下(xià)面是 jQuery 中事件方法的一(yī)些例子:
Event 函數(shù) | 綁定函數(shù)至 |
---|---|
$(document).ready(function) | 将函數(shù)綁定到文檔的就緒事件(當文檔完成加載時(shí)) |
$(selector).click(function) | 觸發或将函數(shù)綁定到被選元素的點擊事件 |
$(selector).dblclick(function) | 觸發或将函數(shù)綁定到被選元素的雙擊事件 |
$(selector).focus(function) | 觸發或将函數(shù)綁定到被選元素的獲得焦點事件 |
$(selector).mouseover(function) | 觸發或将函數(shù)綁定到被選元素的鼠标懸停事件 |