一浩姥、介紹Javascript
Java與Javascript沒有關(guān)系 只是當(dāng)時(shí)取名蹭Java名字的熱度而已
Javascript是解釋型語言只估,由瀏覽器的JS解釋器(JS引擎)解析成機(jī)器可讀的二進(jìn)制碼交給pc進(jìn)行執(zhí)行操作。
Javascript由上到下的解析Javascript的標(biāo)準(zhǔn)是由Ecma組織進(jìn)行制定的秽梅,其中有三大核心構(gòu)成
| :------------: |
| Javascript |
| ECMAscript(核心語法) |
| **DOM(文檔對象模型) ** |
| BOM(瀏覽器對象模型) |
本地js放在body為了防止加載樣式時(shí)會導(dǎo)致頁面加載空白恭理,因?yàn)樵陧撁婕虞d時(shí)由上到下依次執(zhí)行如果JS文件過大則需等待下載完成空白就是這樣發(fā)生的(這樣用戶的體驗(yàn)會感到特別差勁)拯辙。
<scirpt src="http://www.baidu.com/1.js"></script>
也可引用站外JS文件但是要注意安全哦, 使用外部鏈接文件很方便只用改變原文件就可使所有引用JS的html都生效
<script></script>
在H5規(guī)范中可不指定其類型,除非需使用非原生JS可指定其類型颜价。
二涯保、數(shù)據(jù)類型與變量
數(shù)字型、字符型周伦、布爾型夕春、Undefined、Null专挪、Object
數(shù)字類型 包括整數(shù)與小數(shù)兩種如:12321及志、3.1415926。
字符串類型 是用引號包括在內(nèi)的(雙引號單引號都可以)如:"我是字符型又叫字符串"寨腔,其中如果需要轉(zhuǎn)義字符則需加上反斜杠如:"\“\”"困肩。
\n 換行
\t 制表符(tab鍵)
\b 退格
\r 回車
\f 進(jìn)紙
\ 斜杠
\‘ 單引號("),在用單引號表示的字符串中實(shí)用脆侮。列如:"He saidm, 'hey.'"
\ " 雙引號(")锌畸,在用雙引號表示的字符串中實(shí)用。列如:"He saidm, "hey.""
\xnn 以十六進(jìn)制代碼xnn表示的一個(gè)字符(其中n為0~F)靖避。列如, \x41表示"A"
\unnnn 以十六進(jìn)制代碼nnnn表示的一個(gè)Unicode字符(其中n為0~F)潭枣。列如, \u03a3表示希臘字符Σ
布爾型 只有兩種一個(gè)true(真)false(假)比默。
Null 表示一個(gè)空對象指針
Undefined 只申明了變量未賦值,還有一種情況,未申明變量在alert()它的值也是undefined,如果申明了未賦值此時(shí)alert()變量也是undefined。
變量
變量是用于存儲一些變動(dòng)或臨時(shí)的數(shù)據(jù)盆犁,變量存儲在計(jì)算機(jī)內(nèi)存中命咐。
變量使用完成后會回收 JS具有自動(dòng)回收機(jī)制當(dāng)這個(gè)變量操作完成后或長時(shí)間不操作JS引擎會判斷(待修正)。
變量名不能使用保留字谐岁、數(shù)字開頭醋奠、%&等符號,推薦使用駝峰命名法(第一個(gè)單詞首字母小寫后續(xù)首字母大寫)伊佃。
變量名是區(qū)分大小寫的窜司,聲明變量名要含有意義,Javascript是弱類型語言不用指定數(shù)據(jù)類型航揉。
變量未賦值此時(shí)的值為undefind塞祈。
//申明變量通過關(guān)鍵字var
var sum = 1, //一次申明多個(gè)變量
sun1 = 2,
sum3 = 3,
sun4 = 4;
var s1 = 5; //一次申明一個(gè)
運(yùn)算符(待補(bǔ)充)
+、-帅涂、/议薪、*、=(賦值運(yùn)算符)媳友、++(自增)斯议、--(自減)、%(取余數(shù))醇锚、這幾種運(yùn)算符
<捅位、>、<=搂抒、>=、!尿扯、!=求晶、<<、>>衷笋、<<<芳杏、>>>、==辟宗、===爵赵、=
var F1 = 5;
var F2 = 10;
F3 = --F1 + F2; //14
var F4 = F1 + F2; //14
++如果放在值前面會F1先自增加一
var F1 = 5;
var F2 = 10;
F3 = F1++ + F2; //15
var F4 = F1 + F2; //16
--放在后面則F1+F2計(jì)算完成賦值給F3后再加上一
運(yùn)算符有優(yōu)先級如果++放在前面它會優(yōu)先運(yùn)算,*/大于+- ,包在括號內(nèi)運(yùn)算符優(yōu)先運(yùn)算,遇到優(yōu)先級相同會從左到右進(jìn)行運(yùn)算。
運(yùn)算符可用作字符串與拼接字符串如:"你好" + "啊" 結(jié)果輸出為="你好啊"泊脐,還有一種字符串與數(shù)字相連如:"你好啊" + 123 輸出為="你好啊123",會自動(dòng)把數(shù)字轉(zhuǎn)換成字符串進(jìn)行拼接空幻。
數(shù)據(jù)值轉(zhuǎn)換
有三個(gè)函數(shù)parseInt()、parseFloat()容客、Number()
parseInt("轉(zhuǎn)換對象",轉(zhuǎn)換的進(jìn)制數(shù))第一個(gè)數(shù)字為0則忽略掉0,轉(zhuǎn)換中碰到字符串會忽略掉,如:“045123.2512你好哇” ,遇到非數(shù)字會停止轉(zhuǎn)換 輸出為=45123 遇到非數(shù)字會停止秕铛。
parseFloat("轉(zhuǎn)換對象")只能轉(zhuǎn)換10進(jìn)制,第一個(gè)數(shù)字為0則忽略掉0,只轉(zhuǎn)換第一個(gè)小數(shù)點(diǎn)遇到第二個(gè)則忽略,忽略字符串约郁。
Number("轉(zhuǎn)換對象")可以轉(zhuǎn)換任何類型,轉(zhuǎn)換true=1,false
如果是Boolean值,true和false將被轉(zhuǎn)換為1和0
如果是數(shù)值,會簡單返回。
如果是Null值,返回0
如果是undefined,返回NaN如果是字符串,遵循下列規(guī)則:
- 如果字符串只包含數(shù)字(包括正負(fù)符號),則轉(zhuǎn)換為十進(jìn)制數(shù)值,即"1"
- 會變成1,"123"會變成123,011會變成11(前面的零被忽略了);
- 如果字符串中包含;有效的浮點(diǎn)格式,如"1.1",則將轉(zhuǎn)換為對應(yīng)的浮點(diǎn)數(shù)(同樣忽略前面的0)
- 如果字符串中包含有效的十六進(jìn)制格式,如"0xf",則將轉(zhuǎn)換為相同大小的十進(jìn)制整數(shù)值但两。
- 如果字符串空(沒有字符),則轉(zhuǎn)換為0鬓梅。
- 如果字符串包含其他格式字符,則轉(zhuǎn)換為NaN。
如果是對象,則調(diào)用對象的valueOf()方法,然后再次依照前面的規(guī)則轉(zhuǎn)換返回字符串值谨湘。
引用類型
var S1 = 5;
var S2 = S1; //此時(shí)修改S2不會影響S1的值
基本數(shù)據(jù)類型中如果把變量S1賦值給變量S2,被賦值的變量S2會自動(dòng)復(fù)制一個(gè)S1的副本不會與其他變量有關(guān)系包括值相同的變量绽快。
var D1 = {name:"程晨呈", age:19};
var D2 = D1;
console.log(D2); //結(jié)果是Object {name: "程晨呈", age: 19}
在對象里會指向同一個(gè)內(nèi)存地址,當(dāng)值修改時(shí)指向同一變量的值都會改變,因?yàn)樵趯ο罄锼鼈兠嫦虻氖峭粌?nèi)存地址紧阔。
var D1 = {};
console.log(D2); //Object {name: "程晨呈", age: 19}
如果此時(shí)的D1新建一個(gè)對象,D1則新開拓一塊新的內(nèi)存地址并指向新的內(nèi)存地址,變量D2還是指向原來的內(nèi)存地址,因此D2未發(fā)生改變坊罢。
語句
數(shù)組
數(shù)組可以存儲任何數(shù)據(jù),數(shù)組索引從0開始
創(chuàng)建數(shù)組有三種方法,
new Array()//創(chuàng)建一個(gè)空數(shù)組
Array()//創(chuàng)建一個(gè)空數(shù)組
[]//創(chuàng)建一個(gè)空數(shù)組
new Array("nihao",12"可以存變量")
new Array(30)//創(chuàng)建值為30個(gè)的數(shù)組寓辱、
Array(30)//創(chuàng)建值為30個(gè)的數(shù)組艘绍、
[30]//(待測試)
二維數(shù)組(待補(bǔ)充)
prompt("通知","默認(rèn)輸入")默認(rèn)輸入IE7和8中,如果不提供此參數(shù)秫筏,則字符串“undefined”是默認(rèn)值诱鞠。
對象
打開門走進(jìn)一個(gè)十平方米裝滿工具的小屋子里,里面物件兒井然有序連每一卷壁畫都擺放的整整齊齊这敬,哦對了我進(jìn)來要找工具箱航夺,家里需要安上一塊白板方便寫字,隨著眼睛一撇崔涂,喲躲在桌子底下真是讓我好找阳掐,看來白板今天是搞的定了。
工具箱打開后里面有很多張指南(說明書=屬性)冷蚂,里面兒的指南詳細(xì)說明如何操作(操作=方法)缭保,操作后會有什么結(jié)果,這下我就放心啦蝙茶,有了說明書什么搞不定哈哈哈~~~艺骂。
屬性是只讀,方法是動(dòng)作(如何做)
String操作方法
IndexOf("要查找的字符串") 查找字符串索引位置(如果查到返回0未查到返回-1隆夯,區(qū)分大小寫)钳恕。
lastIndexOf("要查找的字符串") 查找字符串索引位置(如果查到返回0未查到返回-1,區(qū)分大小寫)蹄衷。
substr(開始索引,結(jié)束 后一位索引) 提取字符串(復(fù)制),返回值包含開始索引與結(jié)束索引前一位字符,如果不填寫第二位值則選出開始值后面所有字符忧额。
substing(開始索引,要提取字符的長度) 提取字符串(復(fù)制),復(fù)制時(shí)索引開始算入在內(nèi)第二個(gè)參數(shù)是要提取的字符串的長度,如果不填寫第二位值則選出開始值后面所有字符。
charAt() 按照索引提取單個(gè)字符,返回的是一個(gè)字符串愧口。
charCodeAt() 提取單個(gè)字符,返回Unicode字符集中十進(jìn)制編碼睦番。
fromCharCode() 將Unicode字符集編碼轉(zhuǎn)換為字符串。
tirm() 去除字符兩端的空格耍属。
toLowerCase() 把字符串轉(zhuǎn)換成小寫
以下支持正則表達(dá)式
split("以什么分割", "分割多少") 用于分割字符串返回一個(gè)數(shù)組,值為字符串抡砂。
如果以逗號分割則從第一個(gè)值到第一個(gè)逗號之間為一個(gè)值,第二個(gè)值是從第一個(gè)逗號到第二個(gè)逗號之間的值以此類推大咱。
replace("要查找的字符串", "要替換的字符串")用于替換字符串,調(diào)用方法本身不會改變原來的字符串,只會返回一個(gè)被替換的字符串。
search() 用于查找指定字符串,只有一個(gè)值,查詢返回第一個(gè)字符索引值注益。
match() 用于查找指定字符串,返回值是一個(gè)數(shù)組碴巾。
Array操作方法
length() 統(tǒng)計(jì)字符長度。
push() 向里添加值將值放在尾部丑搔。
concat() 鏈接數(shù)組,將要鏈接的數(shù)組名稱當(dāng)做參數(shù)傳入括號中,返回一個(gè)新數(shù)組厦瓢。
slice() 復(fù)制數(shù)組一部分,參數(shù)為數(shù)組索引(索引開始,索引結(jié)束),復(fù)制時(shí)開始索引被算入在內(nèi)結(jié)束索引不算在當(dāng)中,
返回值顯示開始索引+結(jié)束索引前一位字符,如果不填寫第二位值則選出開始值后面所有字符。
join() 修改數(shù)組的分隔符(默認(rèn)是逗號),數(shù)組的值會被轉(zhuǎn)換成字符串啤月。
sort() 將數(shù)組按照升序排列,如果數(shù)組包含字符串則按照Unicode編碼值大小來進(jìn)行排序,A-Z與小寫a-z是兩個(gè)列煮仇。
reverse() 與sort()相反,進(jìn)行降序排列,一樣有字符串按照編碼值進(jìn)行排,用于顛倒數(shù)組中值最后一個(gè)在前第一個(gè)在后谎仲。
indexOf() 查找字符串索引位置(如果查到返回0未查到返回-1浙垫,區(qū)分大小寫。
lastIndexOf() 查找字符串索引位置(如果查到返回0未查到返回-1郑诺,區(qū)分大小寫夹姥。
數(shù)組測試(用函數(shù))
every(element, index, array) 用于測試數(shù)組所有的值是否滿函數(shù)的要求,如果所有值滿足則返回true否則返回false。
some(element, index, array) 用于測試數(shù)組部分值是否滿函數(shù)的要求如果所有值滿足則返回true否則返回false辙诞。
filter(element, index, array) 針對對數(shù)組某一個(gè)元素進(jìn)行測試如果滿足則返回true否則相反辙售。
forEach(element, index, array) 讓數(shù)組中的每一個(gè)元素執(zhí)行一次指定函數(shù),返回值是underfined。
map(element, index, array) 讓數(shù)組中的每一個(gè)元素執(zhí)行一次指定函數(shù),返回一個(gè)新數(shù)組,值是執(zhí)行函數(shù)后的結(jié)果飞涂。
Math操作方法
abs() 返回一個(gè)值的絕對值(負(fù)數(shù)絕對值變?yōu)檎麛?shù)旦部,正數(shù)絕對值是他本身)。
min(至少兩個(gè)參數(shù)對比) 返回一個(gè)最小值(其中有一個(gè)無法轉(zhuǎn)換為數(shù)值則返回NAN)较店。
max(至少兩個(gè)參數(shù)對比) 返回一個(gè)最大值(其中有一個(gè)無法轉(zhuǎn)換為數(shù)值則返回NAN)士八。
ceil() ceil總是把數(shù)字變大或等于參數(shù),向上取整數(shù)(如:-11.1 向上則是-11的上面是11再往上是10這就是向上)。
floor() 和ceil相反,向下取整數(shù)(如:-11.1 向下則是-12,11的后面是12所以是向下)梁呈。
round() 數(shù)值大于等于0.5向上變大,小于等于0.5向下變小婚度。
random() 返回0-1之間的隨機(jī)浮點(diǎn)數(shù),不包括1
pow(基數(shù),次冪) 基數(shù)*次冪
Number
toFixed() 顯示保留小數(shù)位數(shù),小數(shù)點(diǎn)后面數(shù)值會進(jìn)行四舍五入,超出部分用0表示
Date
getFullYear() 獲取年份
getMonth() 獲取月份
getDate() 獲取天數(shù)
getDay() 獲取星期幾,返回值是一個(gè)整數(shù)從索引0開始
getHours() 時(shí)鐘
getMinutes() 分鐘
getSeconds() 秒鐘
getMilliseconds() 毫秒
RgeExp(正則表達(dá)式干什么用的?需補(bǔ)充下)
正則表達(dá)式用于匹配字符串或拆分查找替換捧杉。正則表達(dá)式由//代表開始和結(jié)束,這跟字符串的雙引號是一樣的告訴Javascript這是正則表達(dá)式秘血∥抖叮】
- ** g ** 全局匹配,而不會匹配到第一個(gè)就停下來。
- ** i ** 不區(qū)分大小寫,比如f和F都會匹配灰粮。
- ** m ** 執(zhí)行多行匹配仔涩。指定字符^與$(開始于結(jié)束),用于匹配每一行的開始和結(jié)束
\b
左邊或右邊有字符挨著(單詞分界)
\B
左邊或右邊沒有字符挨著(非單詞分界)
單詞分界是字符與另一個(gè)字符之間的距離
search() 不支持/g
啊 什么貪婪模式 非貪婪模式,我真得好好去看一看了粘舟。
BOM
BOM是Javascript中的核心對象熔脂,為啥說它是核心嘛佩研,因?yàn)閐ocument對象history對象都是widow的子對象
window.open()
window.close
moveBy()
moveTo()()
history對象
屬性
current 當(dāng)前窗口的URL
next 歷史列表中的下一個(gè)URL
previous 歷史列表中的前一個(gè)URL
length 歷史列表的長度,用于判斷列表中的入口數(shù)目
方法
go() 進(jìn)入指定的網(wǎng)頁
back() 返回上一頁
forward() 進(jìn)入下一頁
setTimeout()和clearTimeout()
setTimeout(code, time)是一次性定時(shí)器第一個(gè)值是要執(zhí)行的函數(shù)(函數(shù)不用帶括號)或要執(zhí)行的代碼霞揉,第二個(gè)值是隔多少毫秒執(zhí)行一次旬薯。
clearTimeout()用于清除定時(shí)器,括號中的值是setTimeout的返回值(是整數(shù)隨著每次點(diǎn)擊值都不同),把setTimeout賦給變量返回值就存在變量里适秩,通過變量名清除定時(shí)器
setInterval()和clearInterval(intervalID)
setInterval()和上面的setTimeout差不多不過這位可是一直重復(fù)的只要開始就跟上了發(fā)條的機(jī)器人一樣直到天昏地暗绊序,世界毀滅才會停下來,好啦開個(gè)玩笑秽荞,setInterval()和上面一樣有兩個(gè)值第一個(gè)code第二個(gè)間隔時(shí)間骤公。
setInterval開始想要停止就必須清除,同樣清除的是返回值與clearTimeout一樣扬跋。
DOM
在DOM中把HTML表示為樹形結(jié)構(gòu)
我們把HTML稱為根節(jié)點(diǎn)阶捆,HTML父節(jié)點(diǎn)下面的head稱為子節(jié)點(diǎn)。
如果head節(jié)點(diǎn)下面的title子節(jié)點(diǎn)有文本钦听,那么這個(gè)節(jié)點(diǎn)叫做葉節(jié)點(diǎn)(或文本節(jié)點(diǎn))是樹形結(jié)構(gòu)的尾部洒试。
在DOM中有三個(gè)核心對象
Node 文檔每個(gè)節(jié)點(diǎn)都有自己的對象
NodeList Node對象的列表
NamedNodeMap 允許按照名稱訪問所有Node對象
DOM方法
getAttribute(屬性名) //它是一個(gè)函數(shù),只能通過元素節(jié)點(diǎn)調(diào)用彪见。
setAttribute(屬性名,屬性值) //可以對元素節(jié)點(diǎn)的屬性做出修改儡司,不會修改源代碼的屬性值
removeAttribute(屬性名) //刪除屬性名
childNodes //用于獲取元素的兒子子元素,返回值是數(shù)組
innerHTML //可以獲取和設(shè)置元素內(nèi)容余指,它會解析html標(biāo)簽捕犬。
innerText //只輸出普通文本,F(xiàn)irefox不支持
<code>scrollWidth //對象實(shí)際內(nèi)容的寬度酵镜,不含滾動(dòng)條碉碉,會隨著內(nèi)容的大小而變化寬度,如果不超過可視區(qū)域淮韭,
此時(shí)scrollWidth=clientWidth它們相等
scrollHeight //對象實(shí)際內(nèi)容的高度垢粮,不含滾動(dòng)條,會隨著內(nèi)容的大小而變化寬度靠粪,如果不超過可視區(qū)域蜡吧,
此時(shí)scrollWidth=clientWidth它們相等
offsetWidth //是元素的實(shí)際寬度包含滾動(dòng)條(offsetHeight = clientHeight + 滾動(dòng)條 + 邊框),
如果元素大小發(fā)生變化實(shí)際寬度也會發(fā)生變化</code>
在DOM學(xué)習(xí)中占键,記住最重要的一句話:每一個(gè)元素節(jié)點(diǎn)都看成一個(gè)“對象”昔善。由于元素節(jié)點(diǎn)也是一個(gè)對象,因此他們有自身的屬性和方法畔乙。
Node對象
屬性
firstChild //返回第一個(gè)元素子節(jié)點(diǎn)君仆,沒有子節(jié)點(diǎn)返回null,Chrome、Firefox像空格回車都算一個(gè)節(jié)點(diǎn)返咱。
lastChild //返回最后一個(gè)元素字節(jié)點(diǎn)钥庇,沒有子節(jié)點(diǎn)返回null,Chrome咖摹、Firefox像空格回車都算一個(gè)節(jié)點(diǎn)评姨。
parentNode //獲取指定節(jié)點(diǎn)的父節(jié)點(diǎn)
Node.nodeType /*每個(gè)節(jié)點(diǎn)都有不同的值,查看節(jié)點(diǎn)的值 方便區(qū)別楞艾,
元素 1
屬性 2
文本 3
注釋 8
文檔 9*/
Node.nodeValue /*可以得到或設(shè)置一個(gè)元素的值参咙,比如P標(biāo)簽的內(nèi)容,如果沒有值返回顯示null硫眯。
1. 元素節(jié)點(diǎn)的 nodeValue 是 undefined 或 null
2. 文本節(jié)點(diǎn)的 nodeValue 是文本自身
3. 屬性節(jié)點(diǎn)的 nodeValue 是屬性的值
注:如果想要返回元素的文本內(nèi)容蕴侧,需要搞清楚的是,該當(dāng)文本內(nèi)容在文本節(jié)點(diǎn)里面两入,
因此不得不返回文本節(jié)點(diǎn)的值(element.childNodes[0].nodeValue)净宵。*/
方法
createElement(nodeName) //創(chuàng)建一個(gè)節(jié)點(diǎn) 但是節(jié)點(diǎn)并不存在于DOM樹種,此時(shí)游蕩在內(nèi)存中裹纳。
createTextNode(text) //創(chuàng)建文本節(jié)點(diǎn)createElement只建立一個(gè)空元素節(jié)點(diǎn)可加不了內(nèi)容哦择葡,這個(gè)方法可以加內(nèi)容,它不解析html標(biāo)簽剃氧。
parentnode.appendChild(child) //把新創(chuàng)建的節(jié)點(diǎn)插入到父節(jié)點(diǎn)里敏储。
parentnode.insertBefore(newELement, targetELement) //將第一個(gè)元素放在第二個(gè)元素前面。
node.removeChild(childNode) //刪除當(dāng)前節(jié)點(diǎn)下的子節(jié)點(diǎn),node是當(dāng)前節(jié)點(diǎn)childNode是子節(jié)點(diǎn)朋鞍,前面提到空格與回車都算節(jié)點(diǎn)需要注意已添!
node.cloneChild(bool) //復(fù)制節(jié)點(diǎn),其值是布爾值當(dāng)值為true時(shí)復(fù)制節(jié)點(diǎn)本身+子節(jié)點(diǎn)滥酥,false則復(fù)制節(jié)點(diǎn)本身
node.replaceChild(newChild, oldChild) //替換節(jié)點(diǎn)首先的找到舊節(jié)點(diǎn)的父節(jié)點(diǎn)更舞,不是有句話嗎打狗還得看主人...這例子將就下,新節(jié)點(diǎn)與舊節(jié)點(diǎn)都要準(zhǔn)備好坎吻。
Document對象
屬性
Element.clientWidth // document.body.clientWidth----獲取body的width不包含body默認(rèn)與瀏覽器的margin缆蝉。
Element.clientHeight // document.body.clientHeight----獲取body的height同樣不包含默認(rèn)margin。
document.documentElement.clientWieth //獲取瀏覽器內(nèi)容的寬度瘦真,不包含豎向滾動(dòng)條刊头。
document.documentElement.clientHeight //獲取瀏覽器內(nèi)容的高度,不包含橫向滾動(dòng)條诸尽。
document.URL //返回當(dāng)前URL信息
document.title //可以讀和寫title原杂。
-----為了兼容IE
fgColor 定義文檔的前景色
bgColor 定義文檔的背景色
linkColor 定義“未訪問”的超鏈接顏色
alinkColor 定義“被激活”的超鏈接顏色
vlinkColor 定義“訪問過”的超鏈接顏色
-----只支持IE
方法
document.write() //輸出文本到當(dāng)前文檔,不過會清空原有的弦讽。
document.writeln() /*與write是一樣的這個(gè)方法會多輸出一個(gè)換行符污尉,換句話說就是每次輸出都會帶上換行符,
如果你輸出兩個(gè)對比一下document.writeln("<pre>sd2</pre>");document.write("sd3");你會發(fā)現(xiàn)pre標(biāo)簽解析了自帶的\n往产。*/
getElementById(id Value) //根據(jù)idValue值被碗,返回對該元素的引用(節(jié)點(diǎn))。
getElementsByName(name) //返回一個(gè)節(jié)點(diǎn)列表集合仿村,要通過下標(biāo)索引去獲取哦锐朴,name=name屬性。
getElementsByTagName(tag Name) //根據(jù)括號提供的標(biāo)簽名稱蔼囊,返回一組元素的引用(節(jié)點(diǎn)列表)焚志,返回值是數(shù)組。
getELementsByClassName("class value") //返回值是數(shù)組畏鼓。
querySelector(css Selector) //返回CSS選擇器匹配第一個(gè)元素的引用(節(jié)點(diǎn))酱酬。
quertSelector(css Seleceor) //返回CSS選擇器匹配第一組元素的引用(列表)。
事件
鼠標(biāo)事件
onclick //鼠標(biāo)單擊事件
ondbclick //鼠標(biāo)雙擊事件
onmouseover //鼠標(biāo)移入事件
onmouseout //鼠標(biāo)移出事件
onmousemove //鼠標(biāo)移動(dòng)事件
onmousedown //鼠標(biāo)按下事件
onmouseup //鼠標(biāo)松開事件
表單事件(隸屬鼠標(biāo)事件)
onfocus //獲取焦點(diǎn)事件
onblur //失去焦點(diǎn)事件
onchange //狀態(tài)改變事件
onselect //選中文本事件
鍵盤事件
onkeydown //按下鍵事件(包括數(shù)字鍵云矫、功能鍵)
onkeypress //按下鍵事件(只包含數(shù)字鍵)
onkeyup //放開鍵事件(包括數(shù)字鍵膳沽、功能鍵)
三個(gè)事件的執(zhí)行順序如下:onkeydown -> onkeypress ->onkeyup。
編輯事件
oncopy //復(fù)制事件
oncut //剪切事件
onpaste //粘貼事件
頁面相關(guān)事件
onload //頁面加載事件
onresize //頁面大小事件
onerror //頁面或圖片加載出錯(cuò)事件
jQuery
綠葉網(wǎng)3.3 子元素偽類選擇器
:only-child和:only-of-child就像招聘我這邊人招滿了让禀,只能要一個(gè)多了沒有這就是only-child挑社。only-of-child就像是新公司需要大量有志青年加入創(chuàng)業(yè)的隊(duì)伍,來多少要多少但是限制崗位(崗位就是元素類型)都只能去掃廁所(滑稽)