jQuery簡單入門(三)

来源:http://www.cnblogs.com/imaikce/archive/2016/06/28/5622130.html
-Advertisement-
Play Games

3.事件和動畫 A. 事件 Aa. DOM載入 1.為什麼使用jQuery載入DOM方法? 以javascript的window.onload()方法載入DOM的先決條件是:必須等待被請求頁面的資源全部載入完成,才會為DOM元素添加事件行為;而jquery只要DOM元素載入完成,就立刻綁定事件 2. ...


3.事件和動畫


 

A. 事件

  Aa. DOM載入

  1.為什麼使用jQuery載入DOM方法?

  以javascriptwindow.onload()方法載入DOM的先決條件是:必須等待被請求頁面的資源全部載入完成,才會為DOM元素添加事件行為;jquery只要DOM元素載入完成,就立刻綁定事件

  2.表現形式:

  $(function() {

  //你的實現邏輯

  });


 

  Ab. 事件綁定

  事件綁定方法bindeventType [data],  function() {...}

  

  表現形式:

  $(function() {

           $(“#id”).bind(“click”, function() {

          $(this).next().show();

     });

  });


  Ac. 事件合成

  Jquery有兩個合成事件:hover()和toggle()

  1.hoverenterleave)模擬游標懸停

  表現形式:

  $(function() {

    $(“.class”).hover(function() {

       //游標懸停,在引用class層疊樣式,做出響應

       $(this).next().show();

    }, function() {

       //游標離開引用class層疊樣式,做出響應

       $(this).next().hide();

    });

  });

  上面的案例解釋:當游標懸停在引用了class層疊樣式時,顯示其後面的一個同輩元素;反之隱藏他

  2.togglefn1fn2...)模擬滑鼠點擊事件

  表現形式:

  $(function() {

    $(“button”).toggle(function() {

      alert(“滑鼠第一次點擊!”);

    }, function() {

      alert(“滑鼠第二次點擊!”);

    }, function() {

      alert(“滑鼠第三次點擊!”);

    });

  });

  當滑鼠點擊完成3次之後,再次點擊,則該事件會進入下一輪事件;即:第四次點擊會調用第一個函數...


   Ad. 事件對象的屬性

    1.獲取事件類型event.type

  $(“input”).click(function(event) {

         alert(event.type);//因為這是一個click事件,所以代碼會輸出click

  });

  2.event.preventDefault()//阻止預設事件

  $(function() {

    $(“#sumbit”).click(function(event) {

     event.preventDefault();//阻止表單元素提交

    });

  });

  ...


  Ae. 事件移除

  Unbind(eventType [,data])

  $(function() {   

    $(“#button”).bind(“click”, fn1 = function() {

    alert(“把fn1點擊事件綁定到idbuttonDOM元素上”);

    }).bind(“click”, fn2 = function() {

      alert(“把fn2點擊事件綁定到id值為buttonDOM元素上”);

    });

    $(“#button”).unbind(“click”, fn1);//id值為buttondefn1點擊事件移除

  });


  Af. 操作模擬(trigger())

  1.常用模擬

  如:

    情景描述:現在要求頁面載入完畢後,立刻觸發點擊事件

    $(function() {

      $(“#button”).trigger(“click”);//當頁面DOM載入立即觸發id值為button的 元素上面的點擊事件

  });

  2.出發自定義事件

  $(function() {

    //1.自定義事件

    $(“#button”).bind(“iClick”, function() {  

    });

  //2.觸發自定義事件

  $(“#button”).trigger(“iClick”);

  });

  3.傳遞參數(tigger(type[, data[))

  Ag. 其他用法

  綁定多個事件類型

  $(function() {

    $(“div”).bind(“mouseover mouseout”, function() {

       $(this).toggleClass(“over”);

       alert(“滑鼠移入或離開該div標簽,其樣式會切換變化”);

    });

  });

  ...


 

  B. 動畫

  通過jquery的動畫方法,提供的多樣的視覺效果,給用戶提供豐富的視覺體驗;

  為了實現良好的動畫效果,要求html在標準模式下:

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


 

  Ba. Show()和hide()

  1.show()//顯示動畫

  $(“tag”).show();

  $(“tag”).show(speed);//指定顯示的速度:slownormalfast或則指明一個速度

  2.hide()//隱藏動畫

  參考show()使用形式


 

  Bb. FadeIn()和fadeOut()、slideUp()和slideDown()

  1. FadeIn()和fadeOut()改變元素的不透明度

  $(function() {

    $(“tag”).fadeIn();//tag元素的透明度會越來越高(淡入)

    $(“tag”).fadeOut();//tag元素的透明度會越來越低(淡出)

  });

  2.slideUp()和slideDown()改變元素的高度

  $(function() {

    $(“tag”).fadeIn();//tag元素的高度會越來越高

    $(“tag”).fadeOut();//tag元素的高度會越來越低

  });


  Bc. 自定義動畫方法animate()

  animate(params, speed, callbackFunction)

  1.自定義簡單動畫

  $(function() {

    $(“#id”).click(function() {

      $(this).animate({left : “500px”}, 1000);//每點擊一次,該元素向右移動500個像素單位

    });

  });

  $(function() {

    $(“#id”).click(function() {

      $(this).animate({left : “+=500px”}, 1000);//每點擊一次,該元素在當前位置累加500個像素單位

    });

  2.多重動畫

  2.1、同時執行多個動畫

  $(function() {

    $(“#id”).click(function() {

      $(this).animate({left : “500px”, height : “200px”}, 1000);

    });

  2.2、按順序執行多個動畫

  $(function() {

    $(“#id”).click(function() {

      $(this).animate({left : “500px”, height : “200px”}, 1000)

  .animate({height : “200px”}, 1000);

    });


  Be. 動畫狀態操作

  1.停止元素的動畫

  stop[clearQueue][, gotoEnd]

  $(“#id”).stop();

  $(“#id”).stop(true);//清空所有動畫隊列

  $(“#id”).stop(true, true);//停止當前的動畫併到達其末狀態,並清空隊列

  2.判斷元素是否處於動畫狀態

  $(“#id”).is“:animate”)

  3.延遲動畫

  delay([speed])


 

  Bf 其他動畫方法

  1.toggle()

  2.slideToggle()

  3.fadeTo()

  以漸進的方式調整元素不透明度到一個指定值

  $(“#id”).fadeTo(600, 0.2);

  4.fadeToggle()


 

  Bh. 概括

 

(未完...) 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 利用Python的os.walk()方法對文件目錄進行歷遍操作,得到文件目錄信息,方便下一步操作 ...
  • 題目:判斷一數字序列是否為這些數字入棧的一種出棧方式(前提:棧中的數字不重覆) 思路1:如果下一個彈出的數字剛好是棧頂數字,那麼直接彈出。如果下一個彈出的數字不在棧頂,我們把壓棧序列還沒有入棧的數字壓入輔助棧,知道把下一個要彈出的數字壓入棧頂為止。如果所有的數字都壓入了仍然沒有找到下一個彈出的數字, ...
  • 轉自:http://www.cnblogs.com/Braveliu/p/5100018.html 轉在瞭解了《phpcms V9 URL訪問解析》之後,我們已經知道首頁最終執行的是content模塊下index控制器的init方法。 下麵, 我們逐步分析過程如下: 第一、首頁預設執行的是index... ...
  • 最近在搞一個小程式,會用到動態修改配置文件來進行處理,在百度上找了很多辦法,但是始終達不到我預想的效果,先列出程式運行環境和開發工具版本: 開發工具:VS2010 .Net 運行環境:4.0 有兩種方式,分別如下: 第一種方式:只能在程式運行和調試時有效,在程式打包成安裝包並安裝之後會出現問題,完整 ...
  • 以字元串的形式輸出。 1、response.getWriter().write("您好中國hello"); 如果這樣輸出的話。則瀏覽器結果為: 2、加上代碼 response.setCharacterEncoding("UTF-8"); response.getWriter().write("您好中 ...
  • #include <DbgHelp.h> #pragma comment(lib, "dbghelp.lib") LONG WINAPI TopLevelExceptionFilter(struct _EXCEPTION_POINTERS *pExceptionInfo) { //cout << " ...
  • 近日,Yelp的SRE工程師Dmitriy Samovskiy發表了一篇標題為 《新時代的運維》 的文章,文章中他簡要介紹了在雲計算大環境下,運維工作重心和角色的變化。 其實在6年前,Dmitriy就寫過一篇關於 DevOps趨勢 的文章,在那篇文章中,他認為系統管理人員需要具有簡單腳本之外的開發能 ...
  • for...in迴圈在運行時出錯了錯誤,並沒有要求枚舉對象的修改與當前保持一致。事實上,ES對併發修改在不同js環境下的行為的規範留有餘地。標準規定: 如果被枚舉的對象在枚舉期間添加了新的屬性,那麼在枚舉期間並不能保證新添加的屬性能被訪問。 上面規範的實際後果:如果我們修改了被枚舉的對象,則不能保證... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...