国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JQuery中DOM事件合成用法實例分析

2024-05-06 16:22:25
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了JQuery中DOM事件合成用法,以實例形式分析了hover()方法和toggle()方法實現事件合成的相關技巧,需要的朋友可以參考下

本文實例講述了JQuery中DOM事件合成用法。分享給大家供大家參考。具體分析如下:

jQuery有兩個合成事件——hover()方法和toggle()方法,類似前面講過的ready()方法,hover()方法和toggle()方法都屬于jQuery自定義的方法。

hover()方法

hover()方法的語法結構為:

hover(enter,leave);

hover()方法用于模擬光標懸停事件。當光標移動到元素上時,會觸發指定的第1個函數(enter);當光標移出這個元素時,會觸發指定的第2個函數(leave)。

代碼為:

 

 
  1. $(function(){ 
  2. $("#panel h5.head").hover(function(){ 
  3. $(this).next().show(); 
  4. },function(){ 
  5. $(this).next().hide();  
  6. }) 
  7. }) 

代碼運行后的效果與下面代碼運行后的效果是一樣的。當光標滑過“標題”鏈接時,相應的“內容”將被顯示;當光標滑出“標題”鏈接后,相應的“內容”則被隱藏。

 

 
  1. $(function(){  
  2. $("#panel h5.head").mouseover(function(){  
  3. $(this).next("div.content").show();  
  4. });  
  5. $("#panel h5.head").mouseover(function(){  
  6. $(this).next("div.content").hide();  
  7. })  
  8. }); 

注意:

1. CSS中有偽類選擇符,例如“:hover",當用戶光標懸停在元素上時,會改變元素的外觀。在大多數符合規范的瀏覽器中,偽類選擇符可以用于任何元素。然而在IE 6瀏覽器中,偽類選擇符僅可用于超鏈接元素。對于其他元素,可以使用jQuery的hover()方法。

2. hover()方法準確來說是替代jQuery中的bind("mouseenter")和bind("mouseleave"),而不是替代bind("mouseover")和bind("mouseout")。因此當需要觸發hover()方法的第2個函數時,需要用trigger("mouseleave")來觸發,而不是trigger("mouseout")。

toggle()方法

toggle()方法的語法結構為:

toggle(fnl, fn2, ...fnN);

toggle()方法用于模擬鼠標連續單擊事件。第1次單擊元素,觸發指定的第1個函數(fn1);當再次單擊同一元素時,則觸發指定的第2個函數(fh2);如果有更多函數,則依次觸發,直到最后一個。隨后的每次單擊都重復對這幾個函數的輪番調用。

在前面的加強效果的例子中,使用了以下jQuery代碼:

 

 
  1. $(function(){ 
  2. $("#panel h5.head").toggle(function(){ 
  3. $(this).next().show(); 
  4. },function(){ 
  5. $(this).next().hide(); 
  6. }) 
  7. }) 

通過使用toggle()方法不僅實現了同樣的效果,同時也簡化了代碼。

toggle()方法在jQuery中還有另外一個作用:切換元素的可見狀態。如果元素是可見的,單擊切換后則為隱藏;如果元素是隱藏的,單擊切換后則為可見的。因此上面的代碼還可以寫成如下jQuery代碼:

 

 
  1. $(function(){  
  2. $("#panel h5.head").toggle(function(){  
  3. $(this).next().toggle();  
  4. },function(){  
  5. $(this).next().toggle();  
  6. })  
  7. }) 

為了能有更好的用戶體驗,現在需要在用戶單擊“標題”鏈接后,不僅顯示“內容”,而且高亮顯示“標題”。代碼為:

 

 
  1. $(function(){  
  2. $("#panel h5.head").toggle(function(){  
  3. $(this).addClass("highlight");  
  4. $(this).next().show();  
  5. },function(){  
  6. $(this).removeClass("highlight");  
  7. $(this).next().hide();  
  8. });  
  9. }) 

運行代碼后,如果“內容”是顯示的,“標題”則會高亮顯示:如果“內容”是隱藏的,則不會高亮顯示“新聞標題”。

希望本文所述對大家的jQuery程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 东宁县| 湟源县| 清水县| 新宾| 巴林右旗| 沾化县| 夏邑县| 新巴尔虎右旗| 石家庄市| 礼泉县| 赤城县| 宁陕县| 中西区| 诏安县| 岗巴县| 西乌| 九台市| 板桥市| 精河县| 泉州市| 新沂市| 隆化县| 聊城市| 融水| 常熟市| 古田县| 营山县| 宁河县| 桐城市| 眉山市| 贵港市| 巫溪县| 彰武县| 甘孜| 凤山县| 江山市| 屯门区| 屏东县| 巴楚县| 南宫市| 甘肃省|