主頁 > 企業開發 > jQuery總結

jQuery總結

2020-09-13 01:16:20 企業開發

專案需要用,總結一下相關知識,方便查看,

一、jQuery

1、什么是 jQuery?

(1)jQuery 是一個輕量級的 JavaScript 庫,極大地簡化了 JavaScript 開發,
(2)jQuery 封裝了 JS、CSS、DOM 等并提供一致的、簡潔的 API,簡化了 JS 編程,
(3)jQuery 會頻繁的操作 DOM,會影響性能(得與 MVVM 框架區分),

2、如何引入 jQuery?

(1)引入 jQuery 相關檔案(CDN 方式),

【CDN:(此處選用 BootCDN,其他 CDN 亦可)】
    <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>

 

(2)官網下載也行

【官網下載地址:】
    https://jquery.com/download/

 

(3)基本步驟:
  Step1:引入 jQuery 相關 js 檔案,
  Step2:利用選擇器定位到需要操作的節點(元素),
  Step3:操作節點(元素),

【基本使用格式:】
    $(selector).action()
其中:
    $ 指 jQuery,
    selector 指查詢的 HTML 元素(節點),
    action 指對元素(節點)的操作,
    
【舉例:(隱藏所有的 p 標簽)】
    $("p").hide();

 

(4)檔案就緒事件
  jQuery 代碼需要等 DOM 加載完成后再進行操作,否則可能不生效,

【方式一:】
$(document).ready(function() {
    // jQuery 代碼
});

【方式二:(簡寫形式,效果同方式一)】
$(function() {
    // jQuery 代碼
});

 

(5)小案例分析:
  點擊隱藏按鈕,隱藏當前頁面所有的 p 標簽,

【小案例:】

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>jQuery Demo</title>
        
        <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
        <script type="text/javascript">
            $(function() {
                $("#hide").click(function() {
                    $("p").hide();
                });
                
                $("#show").click(function() {
                    $("p").show();
                })
            });
        </script>
    </head>
    <body>
        <button id="hide" style="background-color: cadetblue;">p hide</button>
        <button id="show" style="background-color: coral;">p show</button>
        <div style="margin-left: 100px; background-color: #5B6270; width: 200px; height: 500px;">
            <div style="margin-top: 20px;">Hello JS</div>
            <p>Hello</p>
            <p>Hello Java</p>
        </div>
    </body>
</html>

 

 

二、jQuery 基本語法

1、選擇器(定位 DOM 元素位置)

  jQuery 選擇器允許 對 HTML 的單個元素 或者 元素組進行操作,能實作定位元素位置并對元素樣式進行增刪改,寫法類似于 CSS 選擇器,
(1)分類:
  基本選擇器、層次選擇器、過濾選擇器、表單選擇器,

(2)基本選擇器
  根據標簽名、id、class名等一種或多種來選擇元素,
  基本選擇器可細分為:元素選擇器、類選擇器、id 選擇器、選擇器組,

1、元素選擇器:根據標簽名定位元素,
    格式: 
        $("標簽名")

2、類選擇器:根據class屬性定位元素,
    格式:
        $(".class屬性名")

3、id選擇器:根據id屬性定位元素,
    格式:
        $("#id")

4、選擇器組:定位一組選擇器所對應的所有元素,
    格式:
        $("#d1, .importent")

注:$("")回傳的均為陣列,

 

(3)層次選擇器
  根據元素的層級關系,加上特殊的符號(>、+、~)來選擇元素,
  層次選擇器又可細分為:后代(子孫)元素選擇器、子元素選擇器、兄弟元素選擇器,

1、后代元素選擇器(選子孫):在select1元素下,選中所有滿足select2的子孫元素,
    格式:
        $("select1 select2")

2、子元素選擇器(只選子):在select1元素下,選中所有滿足select2的子元素,
    格式:
        $("select1 > select2")

3、兄弟元素選擇器(選一個):在select1元素下,選中所有滿足select2的下一個(弟弟)元素,
    格式:
        $("select1 + select2")

4、兄弟元素選擇器(選所有):在select1元素下,選中所有滿足select2的所有(弟弟)元素,
    格式:
        $("select1 ~ select2")

 

(4)過濾選擇器
  根據元素特征去選擇元素,
  過濾選擇器可細分為:基本過濾選擇器、內容過濾選擇器、可見性過濾選擇器、屬性過濾選擇器、狀態過濾選擇器,

【基本過濾選擇器:】
     根據元素的基本特征定位,常用于表格與串列,
        $("select1:first"):第一個元素,
        $("select1:last"):最后一個元素,
        $("select1:not(selector)"):去除selector的所有元素,
        $("select1:even"):挑選偶數行,
        $("select1:odd"):挑選奇數行,
        $("select1:eq(index)"):下標為index的元素,并回傳jQuery物件,
        $("select1:gt(index)"):下標大于index的元素,
        $("select1:lt(index)"):下標小于index的元素,

【內容過濾選擇器:】
    根據文本內容定位元素,常用于文本,
        $("select1:contains(text)"):匹配包含給定文本的元素,
        $("select1:empty"):匹配所有不包含子元素或文本的空元素,

【可見性過濾選擇器:】
    根據可見性定位元素,
        $("select1:hidden"):匹配所有不可見的元素,或者type="hidden"的元素,
        $("select1:visible"):匹配所有可見的元素,

【屬性過濾選擇器:】
    根據屬性(id, class, style等)定位元素,
        $("select1[attribute]"):匹配具有attribute屬性的元素,
        $("select1[attribute = vlue]"): 匹配屬性等于value的元素,
        $("select1[attribute != value]"): 匹配屬性不等于value的元素,
        $("select1[attribute *= value]"): 匹配屬性中包含value的元素,
        $("select1[attribute ^= value]"): 匹配屬性中以value開頭的元素,
        $("select1[attribute $= value]"): 匹配屬性中以value結尾的元素,
        $("select1[attribute1][attribute2]"): 匹配屬性中同時滿足 attribute1、 attribute2 的元素,

【狀態過濾選擇器:】
    根據狀態定位元素,常用于表單,
        $("input:enabled"):匹配可用的 input 元素,
        $("input:disabled"):匹配不可用的 input 元素,
        $("input:checked"):匹配被選中的checkbox,
        $("option:selected"):匹配被選中的option,

 

(5)表單選擇器
  用于選擇表單元素,

$(":text"):匹配文本框,或者使用 $("input:text"),
$(":password"):匹配密碼框,
$(":radio"):匹配單選框,
$(":checkbox"):匹配多選框,
$(":submit"):匹配提交按鈕,
$(":reset"):匹配重置按鈕,
$(":button"):匹配普通按鈕,
$(":file"):匹配檔案框,
$(":hidden"):匹配隱藏框,

 

2、操作 DOM 節點

  通過選擇器可以定位到 DOM 節點,操作 DOM 才是最終的需求,
  DOM 指 Document Object Model,即檔案物件模型,檔案物件模型獨立于平臺和語言的界面,允許程式和腳本動態訪問和更新檔案的內容、結構以及樣式,
(1)捕獲節點、修改節點

1、讀寫節點的HTML內容,相當于JS的innerHTML,
    格式:
        $("select").html();  // 獲取節點的html內容
        $("select").html("<span>123</span>");  // 設定節點的內容

2、讀寫節點的文本內容,相當于JS的innerText,
    格式:
        $("select").text(); // 獲取節點的文本內容
        $("select").text("123");  // 設定節點的文本內容

3、讀寫節點的value屬性值,(表單的值用val取)
    格式:
        $("select").val(); // 獲取節點的value值
        $("select").val("abc");  // 設定節點的value值

4、讀寫節點的屬性值,
    格式:
        $("select").attr("屬性名"); // 獲取節點的某屬性的值
        $("select").attr("屬性名","屬性值"); // 設定節點的某屬性的值

 

(2)增加節點

【增加節點:】
    分兩步:
        1、創建DOM節點,
        2、插入DOM節點,
        
【1、創建DOM節點】
    格式:
        $("節點內容")
    舉例:
        let test = $("<span>hello</span>")

【2、插入DOM節點】
    格式:
        $("select").append(test); 做為最后一個子節點添加起來,
        $("select").prepend(test); 做為第一個子節點添加起來,
        $("select").after(test); 做為下一個兄弟節點添加進來,
        $("select").before(test); 做為上一個兄弟節點添加進來,

 

(3)洗掉節點

【格式:】
    $("select").remove(); // 洗掉節點,
    $("select").remove(selector); // 只洗掉滿足selector的節點,(不常用)
    $("select").empty(); // 清空節點,

 

(4)添加 CSS 樣式、洗掉 CSS 樣式、修改 CSS 樣式

$("select").addClass("");  //追加樣式,
$("select").removeClass(""); // 移除指定樣式,
$("select").removeClass();  //  移除所有樣式,
$("select").toggleClass(""); //  切換樣式(對某個樣式進行添加或移除操作), 
$("select").hasClass(""); //   判斷是否有某個樣式,
$("select").css("");//   讀取css的值,回傳第一次匹配的值,
$("select").css("",  "") ;// 設定樣式,
$("select").css({"" : "",  "" : ""}) ;// 設定多個樣式,

 

(5)獲取尺寸、設定尺寸

$("select").width();  // 回傳元素的寬度(不包括內邊距、邊框、外邊距)
$("select").width("");  // 設定元素的寬度(不包括內邊距、邊框、外邊距)
$("select").height();  // 回傳元素的高度(不包括內邊距、邊框、外邊距)
$("select").height("");  // 設定元素的高度(不包括內邊距、邊框、外邊距)
$("select").innerWidth();  // 回傳元素的寬度(不包括邊框、外邊距)
$("select").innerHeight();  // 回傳元素的高度(不包括邊框、外邊距)
$("select").outerWidth();  // 回傳元素的寬度(不包括外邊距)
$("select").outerHeight();  // 回傳元素的高度(不包括外邊距)
$("select").outerWidth(true);  // 回傳元素的寬度
$("select").outerHeight(true);  // 回傳元素的高度

 

 

(6)遍歷節點
  根據元素的層級關系進行移動,即遍歷,
  可以 向上移動(遍歷祖先節點)、向下移動(遍歷子孫節點)、水平移動(遍歷兄弟節點),

1、向上移動,遍歷祖先(直接父節點、祖父節點等)
    $("select").parent();   // 回傳直接父節點,
    $("select").parents();   // 回傳所有祖先節點,
    $("select1").parentsUntil(“select2”);  // 回傳 select1 與 select2 間的所有節點,若 select2 不存在,則等價于 parents 方法


2、向下移動,遍歷子孫(直接子節點、子孫節點)
    $("select").children();  // 回傳直接子節點
    $("select").children(selector);  // 回傳匹配 selector 的直接子節點
    $("select").find(selector);   // 查找滿足選擇器的所有后代,
    $("select").find("*");   // 查找所有后代,
    
3、水平移動,遍歷兄弟
    $("select").siblings();  // 回傳所有兄弟節點
    $("select").siblings(selector);  // 回傳匹配 selector 的所有兄弟節點,
    $("select").next();   // 回傳下一個兄弟節點
    $("select").next(selector);  //  回傳匹配 selector 的下一個兄弟節點,
    $("select").nextAll();  // 回傳當前元素的所有 弟弟節點
    $("select").nextUntil(selector);  // 回傳兩個選擇器間的所有節點
    $("select").prev();  // 回傳上一個兄弟節點
    $("select").prev(selector);  // 回傳匹配 selector 的上一個兄弟節點,
    $("select").prevAll();  // 回傳當前元素的所有 哥哥節點
    $("select").prevUntil(selector);  // 回傳兩個選擇器間的所有節點

 

3、事件

  jQuery 對事件同樣做了處理,提供了一些 API,
(1)基本語法:

【事件系結語法:】
    $obj.bind(事件型別, 事件處理函式);
    $obj.on(事件型別, [選擇器], 事件處理函式);
比如:
    $obj.bind('click', fn)  
    其可以簡寫為 $obj.click(fn),其中$obj.click()表示觸發了click事件,
    
 【注: on 與 bind 的區別】
     bind(event,fn);
     // 該方法只能給系結元素添加事件,當 on()不使用第二個引數時與bind() 相同,
    // 當使用第二個引數時 就進行了冒泡,將 事件委托給父元素進行處理 并且this還是指向第二個引數選擇器
    on(event,[selector],fn); 
        //該方法可以給指定的子元素系結事件,注意:特別是給動態創建的dom元素系結事件時必須使用該方法,
        //on可以將子元素的事件委托給父元素進行處理;on可以給動態添加的元素加上系結事件,

【獲取事件物件 event:】
在 function 引數中直接寫即可,
格式:
    $(function(){
        $("select").click(function(event) {
            alert(event.pageX + "," + event.pageY+ "," + event.target.nodeName);
        })
    });

【事件物件常用屬性:】
    獲取事件源: 
        event.target, 其回傳的是DOM物件,
    
    獲取滑鼠點擊的坐標:  
        event.pageX, 
        event.pageY.
        
【取消事件冒泡機制:】
    event.stopPropagation() 可以取消事件冒泡,

 

(2)常用事件 API

【滑鼠事件:】
    $("select").click(function() {});   // 滑鼠左鍵點擊事件
    $("select").dblclick(function() {});  // 滑鼠左鍵雙擊事件
    $("select").mouseenter(function() {});  // 滑鼠移入事件(當前選中的元素范圍內觸發一次)
    $("select").mouseleave(function() {});  // 滑鼠移出事件(不會觸發冒泡事件)
    $("select").mouseover(function() {});  // 滑鼠移入事件(從子元素、當前元素相互切換時會觸發)
    $("select").mouseout(function() {});  // 滑鼠移出事件(會觸發冒泡事件)
    $("select").mousemove(function() {});  // 滑鼠移入事件(移動一個像素就會觸發)
    $("select").mousedown(function() {});  // 滑鼠移入并按下事件
    $("select").mouseup(function() {});  // 滑鼠按下后的彈起事件
    $("select").hover(mouseenter, mouseleave);  // 滑鼠懸浮事件(觸發mouseenter、mouseleave事件)

【表單事件:】
    $("select").focus(function() {});  // 元素獲得焦點(點擊或Tab鍵觸發)后觸發
    $("select").blur(function() {});  // 元素失去焦點后觸發
    $("input").change(function() {});  // 表單(input)值被修改后觸發
    $("form").submit(function() {});  // form 提交時觸發
    
【鍵盤事件:】
    $("select").keydown (function(event) {});  // 鍵盤鍵按下觸發,通過 event.key 可以獲取當前按下的鍵名
    $("select").keypress(function(event) {});  // 鍵盤鍵按下觸發,通過 event.key 可以獲取當前按下的鍵名,其有部分鍵獲取不到,只能通過 keydown 獲取,
    $("select").keyup (function(event) {});  // 鍵盤鍵彈起觸發,通過 event.key 可以獲取當前按下的鍵名  

 

4、影片效果

(1)顯示、隱藏

$("select").show();
$("select").hide();
$("select").toggle(speed, function(event) {});  // 引數均非必須,用于切換樣式,speed 用于設定切換,相當于 show()、hide() 方法
作用:通過增加樣式 display: block/none 來實作顯示或者隱藏,

用法:
    $("select").show(執行時間, 回呼函式)
    其中:
        執行時間:slow, normal, fast或毫秒數,
        回呼函式:影片執行完畢后要執行的函式,

 

(2)上下滑動式

$("select").slideDown();
$("select").slideUp();
$("select").slideToggle(speed, function(event) {});
作用:通過增加樣式 display: block/none 來實作顯示或者隱藏,

用法同show()方法,

 

(3)淡入、淡出

$("select").fadeIn();
$("select").fadeOut();
$("select").fadeToggle(speed, function(event) {});
作用:引數可選,通過改變不透明度opacity、display來實作顯示或者隱藏,

$("select").fadeTo(speed,opacity,callback);
作用:speed,opacity 引數必須,通過改變不透明度opacity來實作顯示或者隱藏,

用法同show()方法,

 

(4)自定義影片

animate(偏移位置, 執行時間,回呼函式)
其中:
    偏移位置:必須,{}描述影片執行后元素的樣式,
    執行時間:可選,毫秒數,
    回呼函式:可選,影片執行結束后要執行的函式,
形如:
    $("div").click(function(){
        $("div").animate({"height" : "300px"},1000).animate({"width" : "300px"},1000).animate({"height" : "100px"},1000).animate({"width" : "100px"},1000);
    })

 

5、操作AJAX

  AJAX:Asynchronous JavaScript and XML,即異步的 JavaScript 和 xml,簡單的理解為在不多載整個瀏覽器頁面下,AJAX向后臺發送請求并回應,將資料展示在頁面上,
(1)$.ajax()
  執行異步的 http 請求,

【格式:】
$.ajax({
    url:請求地址,
    type:請求型別POST|GET,
    data:提交的資料,
    async:同步或者異步(默認)處理,true(默認)|false,
    dataType:預期服務器回傳結果型別,
    success:成功時回呼函式,
    error:失敗時回呼函式,
    beforeSend:請求發送前回呼函式
});


【舉例:】
<script>
    $(function(){   //頁面載入后,執行此方法
        $("#showBtn").click(function(){   //id=showBtn的點擊事件
            var name = $("username").val();
            $.ajax({
                url:"https://www.baidu.com",
                type:"get",
                data:{"name":name},  //等價于"name=" + name
                success:function(result){ //result等價于xhr.responseText,即服務器回傳的結果
                    $("msg").html(result);   //回傳html轉換后的資料
                    $("msg").text(result);  //回傳文本資料
                }
            });
        });
    });
</script>

 

(2)$.get()
  使用 Http 的 Get 發送請求并獲取資料,

【格式:】
    $.get(URL,data,function(response,status,xhr),dataType);
其中:
    URL:必須,請求的地址,
    data:可選,提交到服務器的資料,
    dataType:可選,服務器回傳的資料型別,
    function:可選,response為回傳的結果,status為回傳的狀態,xhr為 XMLHttpRequest 物件,

 

(3)$.post()
  使用 Http 的 Post 發送請求并獲取資料,

【格式:】
    $.post(URL,data,function(response,status,xhr),dataType)
    
引數同 $.get()

 

(4)$("select").load()
  從服務器加載資料,并放在指定元素上,

【格式:】
    $("select").load(url,data,function(response,status,xhr))

引數同 $.get()

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/18315.html

標籤:jQuery

上一篇:CSS如何匹配到多個class

下一篇:jQuery---學習roadmap---4 parts

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • IEEE1588PTP在數字化變電站時鐘同步方面的應用

    IEEE1588ptp在數字化變電站時鐘同步方面的應用 京準電子科技官微——ahjzsz 一、電力系統時間同步基本概況 隨著對IEC 61850標準研究的不斷深入,國內外學者提出基于IEC61850通信標準體系建設數字化變電站的發展思路。數字化變電站與常規變電站的顯著區別在于程序層傳統的電流/電壓互 ......

    uj5u.com 2020-09-10 03:51:52 more
  • HTTP request smuggling CL.TE

    CL.TE 簡介 前端通過Content-Length處理請求,通過反向代理或者負載均衡將請求轉發到后端,后端Transfer-Encoding優先級較高,以TE處理請求造成安全問題。 檢測 發送如下資料包 POST / HTTP/1.1 Host: ac391f7e1e9af821806e890 ......

    uj5u.com 2020-09-10 03:52:11 more
  • 網路滲透資料大全單——漏洞庫篇

    網路滲透資料大全單——漏洞庫篇漏洞庫 NVD ——美國國家漏洞庫 →http://nvd.nist.gov/。 CERT ——美國國家應急回應中心 →https://www.us-cert.gov/ OSVDB ——開源漏洞庫 →http://osvdb.org Bugtraq ——賽門鐵克 →ht ......

    uj5u.com 2020-09-10 03:52:15 more
  • 京準講述NTP時鐘服務器應用及原理

    京準講述NTP時鐘服務器應用及原理京準講述NTP時鐘服務器應用及原理 安徽京準電子科技官微——ahjzsz 北斗授時原理 授時是指接識訓通過某種方式獲得本地時間與北斗標準時間的鐘差,然后調整本地時鐘使時差控制在一定的精度范圍內。 衛星導航系統通常由三部分組成:導航授時衛星、地面檢測校正維護系統和用戶 ......

    uj5u.com 2020-09-10 03:52:25 more
  • 利用北斗衛星系統設計NTP網路時間服務器

    利用北斗衛星系統設計NTP網路時間服務器 利用北斗衛星系統設計NTP網路時間服務器 安徽京準電子科技官微——ahjzsz 概述 NTP網路時間服務器是一款支持NTP和SNTP網路時間同步協議,高精度、大容量、高品質的高科技時鐘產品。 NTP網路時間服務器設備采用冗余架構設計,高精度時鐘直接來源于北斗 ......

    uj5u.com 2020-09-10 03:52:35 more
  • 詳細解讀電力系統各種對時方式

    詳細解讀電力系統各種對時方式 詳細解讀電力系統各種對時方式 安徽京準電子科技官微——ahjzsz,更多資料請添加VX 衛星同步時鐘是我京準公司開發研制的應用衛星授時時技術的標準時間顯示和發送的裝置,該裝置以M國全球定位系統(GLOBAL POSITIONING SYSTEM,縮寫為GPS)或者我國北 ......

    uj5u.com 2020-09-10 03:52:45 more
  • 如何保證外包團隊接入企業內網安全

    不管企業規模的大小,只要企業想省錢,那么企業的某些服務就一定會采用外包的形式,然而看似美好又經濟的策略,其實也有不好的一面。下面我通過安全的角度來聊聊使用外包團的安全隱患問題。 先看看什么服務會使用外包的,最常見的就是話務/客服這種需要大量重復性、無技術性的服務,或者是一些銷售外包、特殊的職能外包等 ......

    uj5u.com 2020-09-10 03:52:57 more
  • PHP漏洞之【整型數字型SQL注入】

    0x01 什么是SQL注入 SQL是一種注入攻擊,通過前端帶入后端資料庫進行惡意的SQL陳述句查詢。 0x02 SQL整型注入原理 SQL注入一般發生在動態網站URL地址里,當然也會發生在其它地發,如登錄框等等也會存在注入,只要是和資料庫打交道的地方都有可能存在。 如這里http://192.168. ......

    uj5u.com 2020-09-10 03:55:40 more
  • [GXYCTF2019]禁止套娃

    git泄露獲取原始碼 使用GET傳參,引數為exp 經過三層過濾執行 第一層過濾偽協議,第二層過濾帶引數的函式,第三層過濾一些函式 preg_replace('/[a-z,_]+\((?R)?\)/', NULL, $_GET['exp'] (?R)參考當前正則運算式,相當于匹配函式里的引數 因此傳遞 ......

    uj5u.com 2020-09-10 03:56:07 more
  • 等保2.0實施流程

    流程 結論 ......

    uj5u.com 2020-09-10 03:56:16 more
最新发布
  • 使用Django Rest framework搭建Blog

    在前面的Blog例子中我們使用的是GraphQL, 雖然GraphQL的使用處于上升趨勢,但是Rest API還是使用的更廣泛一些. 所以還是決定回到傳統的rest api framework上來, Django rest framework的官網上給了一個很好用的QuickStart, 我參考Qu ......

    uj5u.com 2023-04-20 08:17:54 more
  • 記錄-new Date() 我忍你很久了!

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 大家平時在開發的時候有沒被new Date()折磨過?就是它的諸多怪異的設定讓你每每用的時候,都可能不小心踩坑。造成程式意外出錯,卻一下子找不到問題出處,那叫一個煩透了…… 下面,我就列舉它的“四宗罪”及應用思考 可惡的四宗罪 1. Sa ......

    uj5u.com 2023-04-20 08:17:47 more
  • 使用Vue.js實作文字跑馬燈效果

    實作文字跑馬燈效果,首先用到 substring()截取 和 setInterval計時器 clearInterval()清除計時器 效果如下: 實作代碼如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta ......

    uj5u.com 2023-04-20 08:12:31 more
  • JavaScript 運算子

    JavaScript 運算子/運算子 在 JavaScript 中,有一些運算子可以使代碼更簡潔、易讀和高效。以下是一些常見的運算子: 1、可選鏈運算子(optional chaining operator) ?.是可選鏈運算子(optional chaining operator)。?. 可選鏈操 ......

    uj5u.com 2023-04-20 08:02:25 more
  • CSS—相對單位rem

    一、概述 rem是一個相對長度單位,它的單位長度取決于根標簽html的字體尺寸。rem即root em的意思,中文翻譯為根em。瀏覽器的文本尺寸一般默認為16px,即默認情況下: 1rem = 16px rem布局原理:根據CSS媒體查詢功能,更改根標簽的字體尺寸,實作rem單位隨螢屏尺寸的變化,如 ......

    uj5u.com 2023-04-20 08:02:21 more
  • 我的第一個NPM包:panghu-planebattle-esm(胖虎飛機大戰)使用說明

    好家伙,我的包終于開發完啦 歡迎使用胖虎的飛機大戰包!! 為你的主頁添加色彩 這是一個有趣的網頁小游戲包,使用canvas和js開發 使用ES6模塊化開發 效果圖如下: (覺得圖片太sb的可以自己改) 代碼已開源!! Git: https://gitee.com/tang-and-han-dynas ......

    uj5u.com 2023-04-20 08:01:50 more
  • 如何在 vue3 中使用 jsx/tsx?

    我們都知道,通常情況下我們使用 vue 大多都是用的 SFC(Signle File Component)單檔案組件模式,即一個組件就是一個檔案,但其實 Vue 也是支持使用 JSX 來撰寫組件的。這里不討論 SFC 和 JSX 的好壞,這個仁者見仁智者見智。本篇文章旨在帶領大家快速了解和使用 Vu ......

    uj5u.com 2023-04-20 08:01:37 more
  • 【Vue2.x原始碼系列06】計算屬性computed原理

    本章目標:計算屬性是如何實作的?計算屬性快取原理以及洋蔥模型的應用?在初始化Vue實體時,我們會給每個計算屬性都創建一個對應watcher,我們稱之為計算屬性watcher ......

    uj5u.com 2023-04-20 08:01:31 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:01:10 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:00:32 more