本文實例講述了JQuery中DOM事件合成用法。分享給大家供大家參考。具體分析如下:
jQuery有兩個合成事件-hover()方法和toggle()方法,類似前面講過的ready()方法,hover()方法和toggle()方法都屬於jQuery自訂的方法。
hover()方法
hover()方法的語法結構為:
hover(enter,leave);
hover()方法用於模擬遊標懸停事件。當遊標移到元素上時,會觸發指定的第1個函數(enter);當遊標移出這個元素時,會觸發指定的第2個函數(leave)。
代碼為:
$(function(){ $("#panel h5.head").hover(function(){ $(this).next().show(); },function(){ $(this).next().hide(); }) })
程式碼運行後的效果與下面程式碼運行後的效果是一樣的。當遊標滑過「標題」連結時,相應的「內容」將被顯示;當遊標滑出「標題」連結後,相應的「內容」則被隱藏。
$(function(){ $("#panel h5.head").mouseover(function(){ $(this).next("div.content").show(); }); $("#panel h5.head").mouseover(function(){ $(this).next("div.content").hide(); }) });
注意:
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程式碼:
$(function(){ $("#panel h5.head").toggle(function(){ $(this).next().show(); },function(){ $(this).next().hide(); }) })
透過使用toggle()方法不僅實現了相同的效果,同時也簡化了程式碼。
toggle()方法在jQuery中還有另一個功能:切換元素的可見狀態。如果元素是可見的,按一下切換後則為隱藏;如果元素是隱藏的,則按一下切換後則為可見的。因此上面的程式碼還可以寫成如下jQuery程式碼:
$(function(){ $("#panel h5.head").toggle(function(){ $(this).next().toggle(); },function(){ $(this).next().toggle(); }) })
為了能有更好的用戶體驗,現在需要在用戶點擊“標題”連結後,不僅顯示“內容”,而且高亮顯示“標題”。代碼為:
$(function(){ $("#panel h5.head").toggle(function(){ $(this).addClass("highlight"); $(this).next().show(); },function(){ $(this).removeClass("highlight"); $(this).next().hide(); }); })
執行程式碼後,如果「內容」是顯示的,「標題」則會高亮顯示:如果「內容」是隱藏的,則不會高亮顯示「新聞標題」。
希望本文所述對大家的jQuery程式設計有所幫助。

实现方法:1、用“$("img").delay(毫秒数).fadeOut()”语句,delay()设置延迟秒数;2、用“setTimeout(function(){ $("img").hide(); },毫秒值);”语句,通过定时器来延迟。

区别:1、axios是一个异步请求框架,用于封装底层的XMLHttpRequest,而jquery是一个JavaScript库,只是顺便封装了dom操作;2、axios是基于承诺对象的,可以用承诺对象中的方法,而jquery不基于承诺对象。

修改方法:1、用css()设置新样式,语法“$(元素).css("min-height","新值")”;2、用attr(),通过设置style属性来添加新样式,语法“$(元素).attr("style","min-height:新值")”。

增加元素的方法:1、用append(),语法“$("body").append(新元素)”,可向body内部的末尾处增加元素;2、用prepend(),语法“$("body").prepend(新元素)”,可向body内部的开始处增加元素。

在jquery中,apply()方法用于改变this指向,使用另一个对象替换当前对象,是应用某一对象的一个方法,语法为“apply(thisobj,[argarray])”;参数argarray表示的是以数组的形式进行传递。

删除方法:1、用empty(),语法“$("div").empty();”,可删除所有子节点和内容;2、用children()和remove(),语法“$("div").children().remove();”,只删除子元素,不删除内容。

去掉方法:1、用“$(selector).removeAttr("readonly")”语句删除readonly属性;2、用“$(selector).attr("readonly",false)”将readonly属性的值设置为false。

on()方法有4个参数:1、第一个参数不可省略,规定要从被选元素添加的一个或多个事件或命名空间;2、第二个参数可省略,规定元素的事件处理程序;3、第三个参数可省略,规定传递到函数的额外数据;4、第四个参数可省略,规定当事件发生时运行的函数。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

禪工作室 13.0.1
強大的PHP整合開發環境

Atom編輯器mac版下載
最受歡迎的的開源編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver Mac版
視覺化網頁開發工具