html標籤,頁面.<html lang="en"英語或zh-cn中文> head標籤,不可見,對body內標籤的修飾,沒有body就沒有head title標籤,頁面標題 meta標籤 聲明編碼 body標籤 能直接寫內容 img標籤 src='圖片地址' a標籤 href="超連接地址" ul無序列表 ol有序列表 dl自定義列表 table表格 p標籤 段落,上下加空白行以區分.文本級標籤,內部不能再嵌套塊級 div 普通塊級標籤,用的最多,用head修飾 hr單筆和,分割線 Form表單 action:交互內容提交地址 input:輸入 text普通文本. password密文 radio單選按鈕,跟選項是分開的.經過name屬性來分組.組內單選 checkbox 多選按鈕 input的type,submit按鈕可用來提交.放在form裏的普通button按鈕同效 file傳文件,date日期, input的button屬性,是form裏的普通按鈕. hidden隱藏reset重置 lable: for屬性,點擊lable的內容,for的id獲取焦點 textarea:文本框 select下拉式選擇框. option每一個選項 selected默認選中
#id 經過id選擇 span 經過標籤類型選 .自定義 經過標籤的class屬性選 div空格span 從div裏找全部span, div>span,從div的第一層包含內找span div+span,div挨着的span,必須是同級,中間不能隔其餘標籤. div~span,div同級的,下面的span,弟弟選擇器. div,span 全部的div和span 並集 div.span div中屬性爲span的,跟空格區別是,點後面是屬性名.交集 僞類選擇器 a:link a標籤訪問前 a:visited a標籤訪問後 a:active a標籤點擊時 input:focus 輸入框獲取焦點時 任意標籤:hover 鼠標浮動時 僞元素 p:first-letter p標籤的第一個字符 p:before 前綴加內容及樣式 p:after後綴加內容及樣式
行內>id選擇器>類選擇器>標籤選擇器>繼承 1000 100 10 1 0 全部的值能夠累加可是不進位 優先級若是相同,寫在後面的生效 div.a{ background-color: green !important; 提升樣式的優先級到最高 }
text-align 文字的水平對齊 left 左對齊 center 居中 reght 右對齊 text-decoration 文本裝飾 none; 沒有下劃線 line-through; 中劃線 overline; 上劃線 underline; 下劃線 text-indent 文本縮進 text-indent: 2em; em單位是一個相對單位,相對當前字體大小的像素是1em line-height 行高,設置行高=容器高度,文字自動垂直居中 line-height: 200px; color:設置字體顏色
background-color: red; 在沒有背景圖片覆蓋的範圍顯示背景顏色 background-image: url('timg.jpg'); 設置背景圖片 background-repeat: no-repeat; 設置圖片不重複 repeat-x水平重複 repeat-y垂直重複 background-position: right top; 圖片的位置 左中右x 上中下y /*left center right /top center bottom*/ background-attachment: fixed; 在窗口中固定圖片的位置 background:red url("timg.jpg") no-repeat left center; 把全部的設置綜合寫在background中
width: 100px; height: 100px; /*border-color: tomato green gray yellow;*/ /*border-width: 1px 3px 5px 7px;*/ /*border-style: solid dotted dashed double;*/ /*一個值:上下左右 四個值:遵循順時針上右下左 三個值:上 右左 下 兩個值:遵循上下 左右 */ /*border-top-style:solid ;*/ 單獨設置頂線的樣式(left,bottom,right) /*border-left-style:solid ;*/ 單獨設置左邊線的樣式 /*border-top-color:red;*/ 單獨設置頂線顏色 border:yellow solid 10px; 統一設置邊框的顏色 樣式 寬度
對於行內標籤來講不能設置寬和高 有些時候須要行內標籤也設置寬和高,須要進行行內-->塊,行內->行內塊 display的屬性值 : block塊 inline行內 inline-block行內快 none display: block; 獨佔一行而且能夠設置寬高 display: inline-block; 既能夠設置寬高又不會獨佔一行 行內\塊轉行內快 display: inline; 表示一個行內元素,不能設置寬高 display: none; 不只不顯示內容,連位置也不佔了
border : 邊框的寬度 padding : 內邊距的距離 content : width height 背景包含的部分:padding + conntent 計算一個盒子的總大小: 寬width+2padding+2border 高height+2padding+border 外邊距 margin 上下的盒子若是設置bottom和top會致使塌陷,取兩個設置的最大值做爲外邊距 margin: 0 auto;表示左右居中(父盒子寬度,子盒子寬度) 分方向的設置 border-top border-right border-bottom border-left padding-top padding-right padding-bottom padding-left margin-top margin-right margin-bottom margin-left 給圖形設置圓角 border-radius: 5px;
在css中去掉列表的樣式 ul,li{ list-style: none; }
float:left /right 浮動的元素會脫離標準文檔流,本來塊級元素就再也不獨佔整行了 而且在原頁面中也不佔位置了,以後的元素會擠到頁面上影響頁面的排版 清除浮動 clear:both 僞元素清除法: .clearfix:after{ content: ''; clear: both; display: block; } <body> <div class="father clearfix"> <div class="box"></div> <div class="box"></div> </div> <div class="main"> 主頁的內容 </div> </body>
內容多餘標籤的大小 visible 可見(默認) hidden 超出部分隱藏 scroll 超出顯示滾動條
position : relative /absolute /fixed top:10px; right:10px; bottom:10px; left:10px; 相對定位 :相對本身原來的位置移動,移動以後還佔據原來的位置 絕對定位 :絕對定位是相對於整個html頁面,不會佔據原來的位置,層級的提高 若是咱們設置了絕對定位的元素 的父元素 沒有設置position,那麼咱們對元素的全部設置都是基於整個頁面 若是設置了position,那麼子盒子的absolute位置會根據父盒子的位置定位 父相子絕:子元素設置的絕對位置會對應着祖級元素的相對位置 固定定位 :固定是相對於整個窗口的
用法說明: z-index 值表示誰壓着誰,數值大的壓蓋住數值小的, 只有定位了的元素,纔能有z-index,也就是說,無論相對定位,絕對定位,固定定位,均可以使用z-index,而浮動元素不能使用z-index z-index值沒有單位,就是一個正整數,默認的z-index值爲0若是你們都沒有z-index值,或者z-index值同樣,那麼誰寫在HTML後面,誰在上面壓着別人,定位了元素,永遠壓住沒有定位的元素。 從父現象:父親慫了,兒子再牛逼也沒用
opacity: 0.5;調整d4對應的整個標籤的透明度是50% .d4{ opacity: 0.5; } <div class="d4"> 你好你好娃哈哈 <img src="timg.jpg" alt=""> </div>
行內(1000) > id(100) > 類(10) > 標籤(1) > 繼承(0)
rgb(255,255,255) #000000-#FFFFFF 單詞表示 rgba(255,255,255,0.5)
font-family 設置"微軟雅黑","宋體" font-size 設置字體大小 默認的字體大小16px font-weight bold粗體
text-align 對齊方式 left(默認) right center text-decoration 字體的劃線 none underline overline line-through line-height 設置行高 字體會自動在行高內垂直居中 text-indent 縮進em單位
background-color :設置顏色 background-image :url('xxx.jpg') background-repeat :no-repeat background-position :水平位置 垂直位置 (left center right) (top center bottom) background-attachment:fixed background-size :調整背景圖片的大小 background:顏色 背景圖 是否重複 位置;
border-style:solid; 設置邊框樣式 border-color:顏色1 顏色2 顏色3 顏色4; border-width:10px; 設置邊框寬度 border: solid red 5px; border-top-style:dotted; border-top: solid red 5px; border-radius:邊框圓角
不顯示不佔位 :none 塊級元素 : block 行內元素 : inline 行內塊 : inline-block
content : width height 內容 padding : 5px 內邊距 padding-top ... border : 見上面 margin : 外邊距 margin-left ... 上下的盒子會塌陷 : 取上下間距之間的最大值 不設置border的父子盒子也會塌陷 更多的描述兄弟之間的關係,若是是父子之間的關係用padding來描述
float:left right 浮動起來的盒子會脫離標準文檔,且不在獨佔一行 父盒子不能被子盒子撐起來 清除浮動 : clear:both 僞元素清除法: clearfix:after{ content:''; clear:both; display:block } overflow:hidden scroll auto
溢出部分如何處理? visible 默認 溢出了也會顯示 hidden 溢出部分隱藏 auto scroll 溢出以後顯示滾動條
position : relative absolute fixed top: left: right: bottom: 相對定位 : 相對本身原來的位置定位,還佔據本身原來的位置 絕對定位 : 相對於有定位的父盒子/整個html界面的位置,不佔據原來的位置 固定定位 : 相對瀏覽器窗口的
表示的在頁面上標籤顯示的前後順序 1.值越大的越在前面顯示 2.設置的值沒有單位沒有範圍 3.浮動的盒子不能設置index 4.從父現象:父級的優先級不高,兒子的優先級再高也沒用
opacity:0.5 是整個標籤的透明度
javascript包含: ECMAscript js的一種標準化規範 標出了一些基礎的js語法 DOM document object model 文本對象模型 主要操做文檔中的標籤 BOM browser object model 瀏覽器對象模型 主要用來操做瀏覽器
方式一:在html頁寫js代碼 <script> alert('hello,world') </script> 方式二: 引入js文件 <script src="first.js"></script>
彈出框alert alert('hello') 彈出框中的內容是"hello" 彈出輸入框 var inp = prompt('問句') 彈出輸入框,輸入的內容會被返回給inp 控制檯輸出 console.log(變量或值)
typeof 變量; typeof(變量);
整數 var a = 1 小數 var b = 1.237 保留小數 b.toFixed(2) //1.24
屬性 : length 方法: trim() 去空白 a.concat('abc') a拼接'abc'串 charAt(索引) 給索引求字符 indexOf(字符) 給字符求索引 slice(start,end) 顧頭不顧尾,能夠用負數,取子串 .toLowerCase() 所有變小寫 .toUpperCase() 所有變大寫 .split(',',2) 根據(第一個參數)分隔符切割,切前多少個結果
true : [] {} false : undefined null NaN 0 ''
null 表示空 boolean值爲false undefined 沒有定義 建立變量可是不賦值 boolean值爲false
建立: var arr = ['a','b','c']; var arr2 = new Array(); 索引操做: arr[0] 查看 arr2[0] = 'alex' 賦值操做
屬性:length 方法: .push(ele) 尾部追加元素 .pop() 獲取尾部的元素 .unshift(ele) 頭部插入元素 .shift() 頭部移除元素 .slice(start, end) 切片 .reverse() //在原數組上改的 反轉 .join(seq) //a1.join('+'),seq是鏈接符 將數組元素鏈接成字符串 .concat(val, ...) //連個數組合並,獲得一個新數組,原數組不變 鏈接數組 .sort() //排序 .splice() //參數:1.從哪刪(索引), 2.刪幾個 3.刪除位置替換的新元素(可多個元素) 刪除元素,並向數組添加新元素。
string --> int parseInt('123') //123 parseInt('123abc') //123 parseInt('abc') //NaN not a number string --> float parseFloat('1.233') float/int --> String var num = 123 String(123) var str = num.toString() 任意類型 --> Boolean Boolean(數據) 字符串和數字相加 --> 字符串 字符串和數字相減 --> 數字
= += -= *= /= %=
> < >= <= == != 不比較類型 === !== 比較類型和值(經常使用)
+ - * / % ** ++ -- var a = 1 undefined var b = a++ // a=2 b=1 var c = ++a // a=3 c=3
&& 邏輯與 ||邏輯或 !邏輯非 true && true //true true || false //true !true //false
if語句 if(條件){代碼}else if(條件2){代碼2}else{代碼3}css
case語句 if的變種,多選1. 遇條件開啓執行狀態,遇break開始執行. 遇default直接執行.html
var err_type = 'info' switch(err_type) { case 'warining': console.log('警告'); break; case 'error': console.log('錯誤'); break; default: console.log('沒錯') }
whilejava
var i = 1; //初始化循環變量 while(i<=9){ //判斷循環條件 console.log(i); i = i+1; //更新循環條件 }
forjquery
//方式一: for(var i = 1;i<=10;i++){ console.log(i) } //方式二: var arr = [1,2,3,4,5] for (n in arr){ console.log(n) }
三元運算符正則表達式
var 結果 = boolean表達式 ? 爲true返回的值:爲false返回的值
function 函數名(參數){ 函數體 return 返回值 } 函數名(參數) //注意 : 傳遞的參數能夠和定義的個數不同,可是不要這麼寫 // 返回值只能有一個 //arguments僞數組 function add(){ console.log(arguments); } add(1,2,3,4) function add(a,b){ console.log(arguments); } add(1,2,3,4)
匿名函數json
var add = function(){ console.log('hello,world'); } //add()調用
自調用函數數組
(function(a,b){ console.log(a,b) })(1,2)
整數和小數都屬於number類型 toFixed(2) 保留兩位小數
'字符串' "字符串" 屬性 :length 方法 :trim(),concat('str'),charAt(索引),indexOf(元素),slice(start,end),split(sep,返回前n個值) toLowerCase(),toUpperCase()
'{"key":18,"123":[1,2,3]}' 自定義對象 = JSON.parse(json字符串) json字符串 = JSON.stingify(自定義對象)
建立一個正則: var reg = RegExp('正則表達式') //注意,寫在字符串中全部帶\的元字符都會被轉義,應該寫做\\ var reg2 = /正則表達式/ //內部的元字符就不會轉義了 reg.test('待檢測的字符串') //若是字符串中含有符合表達式規則的內容就返回true,不然返回false 在字符串中應用正則 var exp = 'alex3714' exp.match(/\d/) //只匹配從左到右的第一個 exp.match(/\d/g) //匹配全部符合規則的 返回一個數組 var exp2 = 'Alex is a big sb' exp2.match(/a/) //只匹配小寫a exp2.match(/a/i) //i表示不區分大小寫 A也會被匹配出來 exp2.match(/a/ig) //不區分大小寫並匹配全部 exp.search(/正則表達式/i) //不區分大小寫,從exp字符串中找出符合條件的子串的第一個索引位置 exp.split(/正則表達式/i,n) //不區分大小寫,根據正則切割,返回前n個結果 exp.replace(/正則/gi,'新的值') //i表示不區分大小寫,g表示替換全部,將符合正則條件的內容替換成新的值
建立對象: var dt = new Date() //獲取到當前時間 dt.toLocalString() //轉換成'2019/8/13 10:18:12' dt.getFullYear() //年 dt.getMonth() //月 1月是0 dt.getday() //週中天 週日是0 dt.getDate() //月中天 1號是1 dt.getHours() //時 從0開始 dt.getMinutes() //分 從0開始 dt.getSeconds() //秒 從0開始 自定義時間: var dt2 = new Date('2018/1/1 12:12:12') 1月1日 var dt2 = new Date(2018,1,1); 2月1日
function Student(name,age){ this.stu_name = name this.stu_age = age } Student.prototype.show = function(){ console.log(this.stu_name,this.stu_age) } var stu = Student('alex',84) // 實例化 stu.stu_name // 查看屬性 stu.stu_age stu.show() // 調用方法 object.prototype.show = function(){ console.log(this.stu_name,this.stu_age) }
整個文檔就是一棵樹 整個文檔是從上到下依次加載的 當加載到script標籤的時候,會有一個特殊的變量提高的解析方法,致使咱們後定義的函數能夠提早被調用 每個節點描述 : 父標籤 子標籤 兄弟節點 屬性 文本 標籤名 1.找到對應的標籤 2.給標籤綁定對應的事件,關係,內容等 3.操做對應的標籤
var a = document.getElementById('baidu') //直接返回一個元素對象 var sons = document.getElementsByClassName('son') //返回元素組成的數組 sons[0] //獲取到一個標籤對象 var divs = document.getElementsByTagName('div') //返回元素組成的數組
找父親 var a = document.getElementById('baidu') var foodiv = a.parentNode //獲取到父節點的對象 找兒子 var foo= document.getElementById('foo') foo.children //獲取全部的子節點,返回一個數組 foo.firstElementChild //獲取第一個子節點 foo.lastElementChild //獲取最後一個子節點 找兄弟 var son1 = document.getElementById('son1') console.log(son1) var son2 = document.getElementById('son2') console.log(son2) son1.nextElementSibling //找下一個兄弟 返回一個對象 son1.previousElementSibling //找上一個兄弟 返回一個對象
var obj = document.createElement('標籤名') // a div ul li span obj就是一個新建立出來的標籤對象
父節點.appendChild(要添加的節點) //添加在父節點的兒子們以後 父節點.insertBefore(要添加的節點,參考子節點) //添加在父節點的某個兒子以前
父節點.removeChild(要刪除的子節點) 子節點1.parentNode.removeChile(子節點2)
父節點.replaceChild(新標籤,舊兒子)
節點.cloneNode() //只克隆一層 節點.cloneNode(true) //克隆本身和全部的子子孫孫 注意 :若是克隆出來的標籤的id是重複的,那麼修改以後才能應用到頁面上
節點對象.getAttribute('屬性名') 節點對象.setAttribute('屬性名','屬性值') 節點對象.removeAttribute('屬性名') 節點對象.classList.add('類名') 節點對象.classList.remove('類名') 節點對象.classList.contains('類名') 節點對象.classList.toggle('類名') 節點對象.value = 值 節點對象.value查看值 節點對象.style.樣式屬性 = 值 設置樣式 全部帶中線的方法都要改變成駝峯命名
節點對象.innerText = '只能寫文字' 只識別文本,全部的標籤也當作文本識別 節點對象.innerHTML = '能夠放標籤' 能夠識別標籤
floor ceil max min random abs round
綁定方式: <button id="btn">點擊一下</button> 方式一: var btn = document.getElementById('btn') btn.onclick = function () { alert('點我幹嗎') } 方式二: btn.onclick = clik function clik() { alert('不要點') } 方式三: <button id="btn" onclick="clik()">點擊一下</button> function clik() { alert('不要點') }
定時器瀏覽器
定時器方法 var tid = setInterval("fn()",n) 每隔n毫秒就執行fn函數一次 var tid = setTimeout("fn()",n) n毫秒以後執行fn函數一次 clearInterval(tid) 清除定時器
屬性: window.location.href 查看當前網頁的url window.location.href = 'http://www.baidu.com' 修改當前網頁的url,修改以後會跳轉 方法: window.location.reload() 刷新頁面
select對象.options.selectedindex 被選中的選項在options中的索引位置
onclick() 單機事件 onmouseover() 鼠標懸浮 onmouseout() 鼠標離開 onscroll() 滾動軸移動 window.onscroll() onChange() 文本區域內內容變化 onfocus() 獲取焦點 onblur() 失去焦點
history.back() go(-1) //回到上一頁 history.go(0) //刷新 history.forward() go(1) //去下一頁
jquery封裝了dom dom轉成jquery : jQuery(dom對象) $(dom對象) jquery轉成dom : jq對象[index]
標籤選擇器 *通用選擇器 $('#id') id選擇器 $('.box') 類選擇器 $('li') $('a') 標籤選擇器 $('*') 通用選擇器 全部的標籤 $('div.box') 交集選擇器 $('div,p,a')div,p並集選擇器 $('div li') 後代 $('div>ul>li')子代 $('.baidu+li')毗鄰 $('.baidu~li')弟弟
$('[屬性名]') 必須是含有某屬性的標籤 $('a[屬性名]') 含有某屬性的a標籤 $('選擇器[屬性名]') 選擇器加屬性名 $('選擇器[屬性名="aaaa"]') 屬性名是後面的屬性值 $('選擇器[屬性名$="xxx"]') 屬性值以xxx結尾的 $('選擇器[屬性名^="xxx"]') 屬性值以xxx開頭的 $('選擇器[屬性名*="xxx"]') 屬性值包含xxx $('選擇器[屬性名1][屬性名2="xxx]') 擁有屬性1,且屬性二的值='xxx',符合前面選擇器要求的
$('選擇器:篩選器') $('選擇器:first') 做用於選擇器選擇出來的結果 first 找第一個 last 最後一個 eq(index) 經過索引找 even 找偶數索引 odd 找奇數索引 gt(index) 大於某索引的 lt(index) 小於某索引的 not(選擇器) 不含 符合選擇器 要求的 has(選擇器) 後代中含有該選擇器要求的(找的不是後代,找的是自己)
$(':text') $(':password') $(':radio') $(':checkbox') $(':file') $(':submit') $(':reset') $(':button') 注意 : date type的input是找不到的
enabled$(':enabled') 能用的 disabled $(':disabled') 被鎖定不能用的 checked $(':checked')選中的,下拉式選框也算. selected$(':selected') 下拉式選框 $(':checkbox:checked') 多選框能選的 $('input:checkbox:checked')
:$('ul p').siblings() 找全部同級,兄弟 $('ul p').prev() 找上一個哥哥,前面選擇器每有一個標籤,就會找一個哥哥 $('ul p').prevAll() 找全部哥哥 $('ul p').prevUntil('選擇器') 從上往下找,找到這個哥哥就中止. next() 找一個弟弟 nextAll() 找全部弟弟 nextUntil('選擇器') 找到這個弟弟就中止 parent() 找一個祖宗,選擇器裏若是有多個標籤,每個都會找到一個祖宗. parents() 找全部直系祖宗 parentsUntil('選擇器') 這裏若是放body,就是找到body如下的大標籤. children() 找全部兒子 children().first 第一個兒子. 篩選方法 first() last() eq(index) not('選擇器') 去掉知足選擇器條件的 filter('選擇器')交集選擇器,在全部的結果中繼續找知足選擇器要求的 find('選擇器') 後代選擇器 找全部結果中符合選擇器要求的後代 has('選擇器') 經過後代關係找當代 後代中有符合選擇器要求的就把當代的留下
// 1.不要用for(i in li_list){}的方式循環一個jq對象 for(let i=0;i<li_list.length;i++){ //let 聲明的變量的做用域只在for循環中 console.log(i) } jq對象中,除了找到的內容外,還有額外的內容. 因此直接for循環會有問題. jq提供了length方法, 等於獲取找到的內容長度.
<body> <button>點擊1</button> <button>點擊2</button> </body> <script src="jquery.3.4.1.js"></script> <script> $('button').click( function () { alert('你點了我一下!') } ) </script>
text() $('li:first').text() // 獲取值 $('li:first').text('wahaha') // 設置值 $('li:last').html() // 獲取值 $('li:last').html('qqxing') // 設置值 $('li:first').html('<a href="http://www.mi.com">爽歪歪</a>') //a標籤 var a = document.createElement('a') a.innerText = '我是AD鈣' $('li:last').html(a) //a 是dom對象 var a2 = document.createElement('a') var jqobj = $(a2) jqobj.text('乳娃娃') $('li:last').html(jqobj) //jqobj是jquery對象
父子關係: 追加兒子 :(父).append(子) (子).appendTo(父) 頭部添加 :(父).prepend(子) (子).prependTo(父) 兄弟關係: 添加哥哥 :參考點.before(要插入的) 要插入的.insertbefore(參考點) 添加弟弟 :參考點.after(要插入的) 要插入的.insertAfter(參考點) 若是被添加的標籤本來就在文檔樹中,就至關於移動 例子append var li = document.createElement('li') var jq = $(li).text('張藝興') $('ul').append(jq) var li = document.createElement('li') var jq = $(li).text('張藝興') $('ul').append(jq[0]) var li = document.createElement('li') var jq = $(li).text('張藝興') $('ul').append('<li>鹿晗</li>') 例子appendTo var li = document.createElement('li') var jq = $(li).text('張藝興') jq.appendTo('ul') var dom_ul = document.getElementsByTagName('ul')[0] var li = document.createElement('li') var jq = $(li).text('張藝興') jq.appendTo(dom_ul) var li = document.createElement('li') var jq = $(li).text('張藝興') jq.appendTo($('ul')) 對已經存在的內容進行添加 -- 移動 $('li:first').appendTo('ul') $('li:last').prependTo('ul') $('ul').prepend('<li>李東宇</li>') $('<li>鄧帥</li>').prependTo('ul') $('#l2').before('<li>李東宇</li>') $('<li>李東宇222</li>').insertBefore('#l2') $('#l2').after('<li>鄧帥</li>') $('<li>鄧帥222</li>').insertAfter('#l2')
刪除 : remove detach empty remove : 刪除標籤和事件,被刪掉的對象作返回值 detach : 刪除標籤,保留事件,被刪掉的對象作返回值 empty : 清空內容標籤,本身被保留 修改 : replaceWith replaceAll replaceWith : a.replaceWith(b) 用b替換a replaceAll : a.replaceAll(b) 用a替換b 複製 : clone var btn = $(this).clone() //克隆標籤但不能克隆事件 var btn = $(this).clone(true) //克隆標籤和事件 var obj = $('button').remove() obj是button標籤,可是事件已經被刪除了 var a = document.createElement('a') a.innerText = 'wahaha' $(a).replaceAll('p') $('p').replaceWith(a)
attr 獲取屬性的值 $('a').attr('href') 設置/修改屬性的值 $('a').attr('href','http://www.baidu.com') 設置多個屬性值 $('a').attr({'href':'http://www.baidu.com','title':'baidu'}) removeAttr $('a').removeAttr('title') //刪除title屬性 若是一個標籤只有true和false兩種狀況,適合用prop處理 $(':checkbox:checked').prop('checked') //獲取值 $(':checkbox:checked').prop('checked',false) //表示取消選中 若是設置/獲取的結果是true表示選中,false表示取消選中
添加類 addClass $('div').addClass('red') //添加一個類 $('div').addClass('red bigger') //添加多個類 刪除類 removeClass $('div').removeClass('bigger') //刪除一個類 $('div').removeClass('red bigger') 轉換類 toggleClass //有即刪 無即加 $('div').toggleClass('red') $('div').toggleClass('red bigger')
$(input).val() $(':text').val('值') $(':password').val('值') 對於選擇框 : 單選 多選 下拉選擇 設置選中的值須要放在數組中 : $(':radio').val([1]) $(':radio').val([1,2,3])
css('樣式名稱','值') css({'樣式名1':'值1','樣式名2':'值2'}) $('div').css('background-color','red') //設置一個樣式 $('div').css({'height':'100px','width':'100px'}) //設置多個樣式
scrollTop() scrollLeft() $(window).scrollLeft() $(window).scrollTop()
內容寬高 : width和height 內容+padding : innerWidth和innerHeight 內容+padding+border :outerWidth和outerHeight 內容+padding+border+margin : outerWidth(true)和outerHeight(true) 設置值:變得永遠是content的值
$(':submit').click( function () { return false } ) 若是返回false不提交 若是返回true不提交
show系列 show hide toggle slide滑動系列 slideUp slideDown slideToggle(時間,回調函數) fade淡入淡出系列 fadeOut fadeIn fadeToggle 動畫的中止 stop 永遠在動畫開始以前,中止動畫
// bind 參數都是選傳的,接收參數e.data $('button').bind('click',{'a':'b'},fn) function fn(e) { console.log(e.data) console.log(e.data.a) } $('button').bind('click',fn) function fn(e) { console.log('wahaha') } // 簡寫的事件名稱當作方法名 $('button').click({'a':'b'},fn) function fn(e) { console.log(e.data) console.log(e.data.a) } $('button').click(fn) function fn(e) { console.log('wahaha') }
$('button').unbind('click')
各類事件app
click(function(){...}) // 單機事件 blur(function(){...}) // 失去焦點 focus(function(){...}) // 得到焦點 change(function(){...}) // input框鼠標離開時內容改變觸發 keyup(function(){...}) // 按下的鍵盤觸發事件 27對應的是esc鍵 獲取鍵盤編號 e.keyCode mouseover/mouseout // 若是給父元素綁定了over事件,那麼這個父元素若是有子元素,每一次進入子元素也 觸發父元素的over事件 mouseenter/mouseleave = hover(function(){...}) //鼠標的懸浮
<style> .outer{ width: 300px; height: 300px; background-color: red; } .inner{ width: 100px; height: 100px; background-color: forestgreen; } </style> <body> <div class="outer"> <div class="inner"></div> </div> </body> <script> $('.outer').click( function () { alert('outer') } ) $('.inner').click( function (e) { alert('inner') // e.stopPropagation() //阻止事件冒泡方法1 return false //阻止事件冒泡方法2 } ) </script>
$('div').on('click','button',{'a':'b'},function (event) { console.log(event.data) alert('不準點') }) 至關於把button元素的點擊事件委託給了父元素div 後添加進來的button也能擁有click事件
document.onload = function(){ //js 代碼 } window.onload = function () { $('button').click(function () { alert('不準點') }) } onload要等到全部的文檔 音視頻都加在完畢才觸發 onload只能綁定一次 //jquery的方式,只等待文檔加載完畢以後就能夠執行,在同一個html頁面上能夠屢次使用 $(document).ready( function () { //文檔加在完畢以後能作的事情 }) //jquery的方式(簡寫)***** $(function () { //文檔加在完畢以後能作的事情 }) //示例 $(function () { $('button').click(function () { alert('不準點') }) }) //jquery中等待全部的資源包括視頻 音頻都加載完才執行function中的代碼,可使用屢次 $(window).ready( function () { alert('123') })
<body> <ul> <li>選項一</li> <li>選項二</li> <li>選項三</li> </ul> </body> <script> $('li').each( function (ind,dom) { //主動傳ind是每項的索引,dom是每一項的標籤對象 console.log(ind,dom) } ) </script>