Javascript

一浩姥、介紹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)


這是DOM結(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ì)伍,來多少要多少但是限制崗位(崗位就是元素類型)都只能去掃廁所(滑稽)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末巡揍,一起剝皮案震驚了整個(gè)濱河市痛阻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌腮敌,老刑警劉巖阱当,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異缀皱,居然都是意外死亡斗这,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進(jìn)店門啤斗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來表箭,“玉大人,你說我怎么就攤上這事钮莲∶庾辏” “怎么了?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵崔拥,是天一觀的道長极舔。 經(jīng)常有香客問我,道長链瓦,這世上最難降的妖魔是什么拆魏? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任盯桦,我火速辦了婚禮,結(jié)果婚禮上渤刃,老公的妹妹穿的比我還像新娘拥峦。我一直安慰自己,他們只是感情好卖子,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布略号。 她就那樣靜靜地躺著,像睡著了一般洋闽。 火紅的嫁衣襯著肌膚如雪玄柠。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天诫舅,我揣著相機(jī)與錄音羽利,去河邊找鬼。 笑死刊懈,一個(gè)胖子當(dāng)著我的面吹牛铐伴,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播俏讹,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼当宴,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了泽疆?” 一聲冷哼從身側(cè)響起户矢,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎殉疼,沒想到半個(gè)月后梯浪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡瓢娜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年挂洛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片眠砾。...
    茶點(diǎn)故事閱讀 40,133評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡虏劲,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出褒颈,到底是詐尸還是另有隱情柒巫,我是刑警寧澤,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布谷丸,位于F島的核電站堡掏,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏刨疼。R本人自食惡果不足惜泉唁,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一鹅龄、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧亭畜,春花似錦砾层、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽止吐。三九已至宝踪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間碍扔,已是汗流浹背瘩燥。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留不同,地道東北人厉膀。 一個(gè)月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像二拐,于是被迫代替她去往敵國和親服鹅。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,077評論 2 355

推薦閱讀更多精彩內(nèi)容