(JavaScript學習記錄):jQuery 樣式操作
- 寫在前面:參考嗶哩嗶哩黑馬程式設計師pink老師教程
- 地址:https://www.bilibili.com/video/BV1Sy4y1C7ha?t=41&p=4
目錄
jQuery 樣式操作
操作 css 方法
- jQuery 可以使用 css 方法來修改簡單元素樣式; 也可以操作類,修改多個樣式。
- 引數只寫屬性名,則是返回屬性值
$(this).css(''color'');
- 引數是屬性名,屬性值,逗號分隔,是設定一組樣式,屬性必須加引號,值如果是數字可以不用跟單位和引號
$(this).css(''color'', ''red'');
- 引數可以是物件形式,方便設定多組樣式。屬性名和屬性值用冒號隔開, 屬性可以不用加引號。
$(this).css({ "color":"white", "font-size":"20px"});
案例
<body> <div></div> <script> // 操作樣式之css方法 $(function() { console.log($("div").css("width")); // $("div").css("width", "300px"); // $("div").css("width", 300); // $("div").css(height, "300px"); 屬性名一定要加引號 $("div").css({ width: 400, height: 400, backgroundColor: "red" // 如果是複合屬性則必須採取駝峰命名法,如果值不是數字,則需要加引號 }) }) </script> </body>
設定類樣式方法
- 作用等同於以前的 classList,可以操作類樣式, 注意操作類裡面的引數不要加點。
- 新增類
$(“div”).addClass(''current'');
- 移除類
$(“div”).removeClass(''current'');
- 切換類
$(“div”).toggleClass(''current'');
案例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> div { width: 150px; height: 150px; background-color: pink; margin: 100px auto; transition: all 0.5s; } .current { background-color: red; transform: rotate(360deg); } </style> <script src="jquery.min.js"></script> </head> <body> <div class="current"></div> <script> $(function() { // 1. 新增類 addClass() // $("div").click(function() { // // $(this).addClass("current"); // }); // 2. 刪除類 removeClass() // $("div").click(function() { // $(this).removeClass("current"); // }); // 3. 切換類 toggleClass() $("div").click(function() { $(this).toggleClass("current"); }); }) </script> </body> </html>
案例:tab 欄切換
① 點選上部的li,當前li 新增current類,其餘兄弟移除類。 ② 點選的同時,得到當前li 的索引號 ③ 讓下部裡面相應索引號的item顯示,其餘的item隱藏
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> * { margin: 0; padding: 0; } li { list-style-type: none; } .tab { width: 978px; margin: 100px auto; } .tab_list { height: 39px; border: 1px solid #ccc; background-color: #f1f1f1; } .tab_list li { float: left; height: 39px; line-height: 39px; padding: 0 20px; text-align: center; cursor: pointer; } .tab_list .current { background-color: #c81623; color: #fff; } .item_info { padding: 20px 0 0 20px; } .item { display: none; } </style> <script src="jquery.min.js"></script> </head> <body> <div class="tab"> <div class="tab_list"> <ul> <li class="current">商品介紹</li> <li>規格與包裝</li> <li>售後保障</li> <li>商品評價(50000)</li> <li>手機社群</li> </ul> </div> <div class="tab_con"> <div class="item" style="display: block;"> 商品介紹模組內容 </div> <div class="item"> 規格與包裝模組內容 </div> <div class="item"> 售後保障模組內容 </div> <div class="item"> 商品評價(50000)模組內容 </div> <div class="item"> 手機社群模組內容 </div> </div> </div> <script> $(function() { // 1.點選上部的li,當前li 新增current類,其餘兄弟移除類 $(".tab_list li").click(function() { // 鏈式程式設計操作 $(this).addClass("current").siblings().removeClass("current"); // 2.點選的同時,得到當前li 的索引號 var index = $(this).index(); console.log(index); // 3.讓下部裡面相應索引號的item顯示,其餘的item隱藏 $(".tab_con .item").eq(index).show().siblings().hide(); }); }) </script> </body> </html>
類操作與className區別
- 原生 JS 中 className 會覆蓋元素原先裡面的類名。
- jQuery 裡面類操作只是對指定類進行操作,不影響原先的類名。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> .one { width: 200px; height: 200px; background-color: pink; transition: all .3s; } .two { transform: rotate(720deg); } </style> <script src="jquery.min.js"></script> </head> <body> <div class="one two"></div> <script> // var one = document.querySelector(".one"); // one.className = "two"; // $(".one").addClass("two"); 這個addClass相當於追加類名 不影響以前的類名 $(".one").removeClass("two"); </script> </body> </html>
相關文章
- (JavaScript學習記錄):jQuery 屬性操作JavaScriptjQuery
- JQuery學習記錄jQuery
- jQuery 樣式操作jQuery
- JavaScript Promise 學習記錄(一)JavaScriptPromise
- 分散式學習記錄分散式
- 【JavaScript】DOM之樣式操作JavaScript
- JavaScript中Date學習記錄_013JavaScript
- 函式 - Go 學習記錄函式Go
- JavaScript學習筆記 - 原生函式JavaScript筆記函式
- jQuery 學習筆記jQuery筆記
- jQuery學習筆記jQuery筆記
- javascript 學習記錄 -- 程式設計題集合JavaScript程式設計
- web基礎學習筆記(二十)之jquery動畫操作Web筆記jQuery動畫
- 樣式問題--記錄
- CSS學習筆記之字型樣式CSS筆記
- JavaScript中的物件學習筆記(屬性操作)JavaScript物件筆記
- jQuery學習筆記03jQuery筆記
- jQuery 學習系列筆記jQuery筆記
- jQuery學習筆記(ajax)jQuery筆記
- Jquery學習筆記(一)jQuery筆記
- 學習筆記:javascript中的Generator函式筆記JavaScript函式
- JavaScript正規表示式學習筆記(一)JavaScript筆記
- JavaScript學習筆記(七)—— 再說函式JavaScript筆記函式
- Javascript學習筆記——4.11 賦值表示式JavaScript筆記賦值
- jQuery 學習筆記:jQuery 程式碼結構jQuery筆記
- css樣式設定技巧學習筆記CSS筆記
- css樣式選擇器學習筆記CSS筆記
- PHP 第三週函式學習記錄PHP函式
- PHP 第二週函式學習記錄PHP函式
- PHP 第九周函式學習記錄PHP函式
- PHP 第十週函式學習記錄PHP函式
- PHP 第七週函式學習記錄PHP函式
- PHP 第五週函式學習記錄PHP函式
- PHP 第六週函式學習記錄PHP函式
- PHP 第一週函式學習記錄PHP函式
- 好程式設計師web前端培訓JavaScript學習筆記--jQuery程式設計師Web前端JavaScript筆記jQuery
- 學習記錄
- buu Reverse學習記錄(10) 不一樣的flag