JQuery 基本使用、操作樣式、簡單動畫

来源:https://www.cnblogs.com/jiyu-hlzy/archive/2019/12/14/12039726.html
-Advertisement-
Play Games

JQ與JS JQ是JS寫的插件庫,就是一個JS文件 凡是用JQ能實現的,JS都能實現,JS能實現的,JQ不一定能實現 引入 BootCDN:https://www.bootcdn.cn/jquery/ 本地文件引入:`` 線上引入:`` 選擇元素 在JQ中使用選擇器選擇元素和在CSS中使用CSS選擇 ...


JQ與JS

  • JQ是JS寫的插件庫,就是一個JS文件
  • 凡是用JQ能實現的,JS都能實現,JS能實現的,JQ不一定能實現

引入

  • BootCDN:https://www.bootcdn.cn/jquery/
  • 本地文件引入:<script src="js/jq.js"></script>
  • 線上引入:<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.js"></script>


選擇元素

  • 在JQ中使用選擇器選擇元素和在CSS中使用CSS選擇器是一樣的
  • $("p,span").click(function () { ... });
  • 方法內使用時,選擇當前選中的元素,用this:$(this)

基本使用一

  • 修改內容
    • html()
    • text()
  • jq/js對象轉換
    • get()/[]
    • $()
  • 點擊事件
    • 單擊:click()
    • 雙擊:dblclick()
  • 滑鼠滑入滑出:hover()
  • 添加內容
    • 前:prepend()
    • 後:append()
  • 添加標簽
    • 前:before()
    • 後:after()
  • 移除值
    • empty()
    • remove()
// 修改內容
$("#p1").html("<h1>11</h1>");//html()
$("#p2").text("<h1>12</h1>");//text()

//將jq對象轉換為js對象
var p = $('p');
p.get(0).innerHTML=("<h1>21</h1>");//get()
p[1].innerText=("<h1>22</h1>");//[]

// 將js對象轉換為jq對象
var sp1 = document.getElementsByClassName('sp1');
$(sp1).text("23");//$()

//單擊
$("#p1").click(function () {
    alert("單擊")
});
//雙擊
$("#p2").dblclick(function () {
    alert('雙擊')
});

// 滑鼠滑入滑出
$("#p2").hover(function () {
    alert("滑鼠滑入")
},function () {
    alert("滑鼠滑出")
});

//添加內容
var p2 = $("#p2");
p2.prepend("在前==preend==");//prepend()
p2.append("==append==在後");//append()

//添加標簽
var p1 = $("#p1");
p1.before("<p id='p0'>p1_前</p>");//before()
p1.after("<p class='p'>p1_後</p>");//after()

//移除
$('#p1').empty();//清空內容、標簽還在
$('#p2').remove();//連標簽一起刪除


基本使用二

  • 操作屬性
    • attr()
    • removeAttr()
  • 添加/移除Class屬性的值
    • addClass()
    • removeClass()
  • 判斷:hasClass()
  • 索引
    • each()
    • index()
  • 滾動條事件
    • scroll()
    • scrollTop()
    • scrollLeft()
var div1 = $("#div1");
// 操作屬性
div1.attr("aaa","bbb");
// alert(div1.attr("aaa"));//bbb
div1.removeAttr("aaa");

// 添加/移除class屬性的值
div1.addClass("divClass1");
div1.addClass("divClass2");//class="divClass1 divClass2"
div1.removeClass("divClass1");//class標簽還在,但沒有值

//判斷Class是否有這個值
// alert(div1.hasClass("divClass"));

//遍歷 each()
$("ul li").each(function (i) {
    $(this).text("元素下標:"+i)
});

//下標  index()
$("li").click(function () {
    alert($(this).index())
});

// 滾動條事件
$(window).scroll(function () {
    console.log("左:"+$(document).scrollLeft());//離左邊
    console.log("上:"+$(document).scrollTop());//離上邊
})


基本使用三

  • 父級元素:parent()
  • 子級元素:children()
  • 兄弟:siblings()
  • 後代:find()
  • 祖宗:parents()
// 查找父級元素
console.log($("li").parent());
// 查找子級元素
console.log($("#div1").children());
// 查找兄弟元素
console.log($("#p2").siblings());
// 查找後代元素
console.log($("ul").find("li"));//find必須給參數
// 查找祖輩元素
console.log($("#li3").parents());


操作CSS樣式

$("..").css({...})
//設置
$("#div1").css({
    "height":"300px",
    "width":"300px",
    "border":"1px red solid"
});
//獲取
console.log($("#div1").css("border"));


簡單動畫

  • 隱藏: hide()
  • 顯示: show()
  • 向上:slideUp()
  • 向下:slideDown()
  • 取反:slideToggle()
  • 淡入:fadeIn()
  • 淡出:fadeOut()
  • 自定義:fadeTo()
  • 取反:fadeToggle()
  • 動畫:animate()
  • 停止:stop()
  • 延遲:delay()
// //顯示
// $("#btn1").click(function () {
//     $("#div1").show(500)//設置動畫時間
// });
// // 隱藏
// $("#btn2").click(function () {
//     $("#div1").hide()
// });

// //向上
// $("#btn1").click(function () {
//     $("#div1").slideUp(2000);//設置動畫時間
//     //取反:向上完畢之後會自動返回
//     // $("#div1").slideToggle(2000);
//
// });
// // 向下
// $("#btn2").click(function () {
//     $("#div1").slideDown();
//     $("#div1").slideToggle(500);//取反
// });

// //淡入
// $("#btn1").click(function () {
//     $("#div1").fadeIn(1500);//設置動畫時間
//     $("#div1").fadeToggle(500);//取反
//
// });
// // 淡出
// $("#btn2").click(function () {
//     $("#div1").fadeOut(1500);
// });
// // 自定義
// $("#btn3").click(function () {
//     // 參數:動畫時間,透明度(0-1)
//     $("#div1").fadeTo(1000,0.3);
// });

//自定義動畫
$("#btn1").click(function () {
    //動畫時間3秒、延遲3秒
    //完成或者停止時,3秒過後才能繼續後續點擊的動畫操作
    $("#div1").animate({
        width: "600px",
        height: "400px",
        opacity: "0.3"  //透明度
    }, 3000).delay(3000)
});
//自定義動畫
$("#btn2").click(function () {
    //動畫時間3秒、延遲2秒
    //完成或者停止時,2秒過後才能繼續後續點擊的動畫操作
    $("#div1").animate({
        width: "100px",
        height: "100px",
        opacity: "1"  //透明度
    },3000).delay(2000)
});
// 停止動畫
$("#btn3").click(function () {
    $("#div1").stop();
});





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

-Advertisement-
Play Games
更多相關文章
  • 當連接sql server本地伺服器 報一下錯誤: 標題: 連接到伺服器 無法連接到 localhost。 。。。。。 打開windows服務管理界面(win+R鍵,) 接著找到 再次連接即可 ...
  • 元類, pymysql 一、元類 自定義元類 二、pymysql 通過pymysql 去連接資料庫 ...
  • https://sqlserver.code.blog/2019/12/14/connect-sql-server-from-linux-client-using-windows-authentication-and-troubleshoot-steps/ ...
  • 裝載請標明出處,維權必究:https://www.cnblogs.com/tangZH/p/12040927.html 首先我們在as中雙擊apk,出現apk的分析界面,然後選中保存簽名相關文件的文件夾: 一:簽名文件: 1、MANIFEST.MF:保存了所有其他文件的SHA-1並base64編碼後 ...
  • 轉載請標明出處,維權必究:https://www.cnblogs.com/tangZH/p/12037179.html 繼上次這一篇後:https://www.cnblogs.com/tangZH/p/12013685.html 我繼續探討,這次的場景和上一次的場景是一樣的,在一個佈局中,根佈局是相 ...
  • 題目描述: 給定一個整數數組 nums 和一個目標值 target,請你在該數組中找出和為目標值的那 兩個 整數,並返回他們的數組下標。 你可以假設每種輸入只會對應一個答案。但是,你不能重覆利用這個數組中同樣的元素。 示例: 給定 nums = [2, 7, 11, 15], target = 9 ...
  • 前言 總所周知,Vue新版本3.0 使用 TypeScript 開發,讓本來就很火的 TypeScript 受到更多人的關註。雖然 TypeScript 在近幾年才火,但其實它誕生於2012年10月,正式版本發佈於2013年6月,是由微軟編寫的自由和開源的編程語言。TypeScript 是 Java ...
  • 添加刪除記錄 ~~~javascript Name Email Salary Tom [email protected] 5000 Delete Jerry [email protected] 8000 Delete 添加新員工 name: email: salary: Submit ~~~ ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...