<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    美麗涵涵童裝店--說我博客名字,給你們打折!
    隨筆 - 82  文章 - 266  trackbacks - 0
    <2007年7月>
    24252627282930
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234


    點(diǎn)擊這里給楊愛友發(fā)消息
    美麗涵涵童裝店
    說我博客名字,給你們打折!

    常用鏈接

    留言簿(6)

    隨筆分類

    隨筆檔案

    文章檔案

    好友的BLOG

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

     

    序言

    寫本文的目的是對(duì)最近看過的篇幅進(jìn)行簡(jiǎn)單的總結(jié),把我認(rèn)為重點(diǎn)應(yīng)該記住的東西寫出來,方便以后查看回憶。

    ECMAScript基礎(chǔ)

    Ø        20世紀(jì)90年代,為了提高系統(tǒng)運(yùn)行速度,各大廠商分別開發(fā)了自己的script腳本,用于在客戶端進(jìn)行數(shù)據(jù)校驗(yàn)等功能,但開發(fā)出來的網(wǎng)頁不能夠跨平臺(tái)運(yùn)行。隨著業(yè)界的擔(dān)心,制定一個(gè)script標(biāo)準(zhǔn)勢(shì)在必行。ECMAScript就是規(guī)定了能適應(yīng)于各種宿主環(huán)境的script核心語法規(guī)則。一個(gè)完整的javascript庫包括三部分:ECMAScriptDOMBOM

    Ø        原始值:是存儲(chǔ)在棧中的簡(jiǎn)單數(shù)據(jù)段,也就是說,他們的值直接存儲(chǔ)在變量訪問的內(nèi)存空間。

    Ø        引用值:是存儲(chǔ)在堆中的對(duì)象,也就是說,存儲(chǔ)在變量處的值是一個(gè)指針,指向存儲(chǔ)對(duì)象的內(nèi)存處。

    Ø         5中原始值:StringNumberObject undefined boolean

    Undefined 聲明的變量未初始化;

    Null 表示尚未存在的對(duì)象;

    Number 5個(gè)特殊值也屬于此類型:Number.max_valueNumber.min_valueNumber.positive_infinity
    Number.negative_infinityNAN

    相關(guān)的方法有:isFinit()isNaN()

    Ø        typeOf 檢查變量類型;intenseOf 檢測(cè)對(duì)象類型。

    Ø        5種引用類型:

    Number類型相關(guān)方法:paserInt() paserFloat() toFixed()toExponential()toPrecision()
    String類型包含的常用方法有:charAt() charCodeAt() indexOf() lastIndexOf() splice() contact() lowerCase() toUpperCase()

    Ø         函數(shù)理解:JS中的函數(shù)其實(shí)是一個(gè)功能完整的對(duì)象,類Function可以創(chuàng)建任何類型的函數(shù),也即對(duì)象,對(duì)象名或叫函數(shù)名只是一個(gè)指向?qū)ο蟮闹羔槪院瘮?shù)名可以做為參數(shù)傳遞給另外一個(gè)函數(shù)。

    第三章 對(duì)象基礎(chǔ)

    JS中有沒有類,為何說JS中沒有真正的類?什么才叫正式的類?

    JS中有三種對(duì)象:本地對(duì)象、內(nèi)置對(duì)象、宿主對(duì)象。

    本地對(duì)象:獨(dú)立于宿主環(huán)境的ECMAScript定義的對(duì)象(類?)最常用的有ArrayDate類。

    Ø         Array類:可以聲明一個(gè)變量直接進(jìn)行附值,但是不能用數(shù)組的一些方法?(試驗(yàn))數(shù)組Array對(duì)象包含的方法有:toString()valueOf()toLocalString()join()contact()slice()pushpop()shift()unshift()reverse()sort()splice()

    Ø         Date對(duì)象:以后再仔細(xì)的看。

    內(nèi)置對(duì)象:類似JSP中的內(nèi)置對(duì)象,不需要開發(fā)者實(shí)例化即可使用,調(diào)用里面的方法也不需要指出對(duì)象的引用,當(dāng)然了,內(nèi)置對(duì)象都屬于本地對(duì)象,在JS中提供兩個(gè)內(nèi)置對(duì)象:globalMath對(duì)象。

    Ø         Global對(duì)象:它包含很多方法和和屬性,但用代碼來測(cè)試他又不是個(gè)對(duì)象,不解,為什么ECMA不叫他是個(gè)對(duì)象。它包含的方法有:siNan()isFinite()parseInt()parseFloat()encodeURL()decodeURL()eval()JS提供的一些特殊值及所有本地對(duì)象的構(gòu)造函數(shù)都是Global對(duì)象的屬性,它包含的特殊值有:undefinedNaNinfinityObjectArrayFunctionBooleanStringNumberDateRegExpError…….and so on

    Ø         Math對(duì)象:一發(fā)很復(fù)雜、很有用、必須要熟記其所有方法的對(duì)象。它包含很多屬性,大多是數(shù)學(xué)計(jì)算時(shí)的特殊值,例如:ELN10LOG2Log10EPISQRT1_2sqrt2。它包含的方法有:min()max()abs()random(),舍入操作的ceil()floor()round(),與指數(shù)有關(guān)的方法exp()log()pow()sqrt()及全部的三角函數(shù)求值方法。

    JS中所有的方法和屬性都是public類型的。

    JS中,對(duì)象名只是一個(gè)引用,指向?qū)ο蟮膬?nèi)存地址。JAVA中每個(gè)對(duì)象都獨(dú)立站用一快內(nèi)存空間,變量名即是對(duì)象的存儲(chǔ)處?

    ECMAScript中沒有StringBuffer對(duì)象,要通過自己編寫代碼來創(chuàng)建具有此功能的對(duì)象。用Array對(duì)象可以使用同樣的功能。

    ProtoType對(duì)象的所有屬性和方法都會(huì)被傳遞給那個(gè)類的所有實(shí)例。

    每個(gè)對(duì)象都有ProtoType屬性,可以通過它更改或添加任何本地、內(nèi)置對(duì)象的方法。

    定義類(對(duì)象):有5種常用的方式,它們分別是構(gòu)造函數(shù)方式、原型方式、混合的構(gòu)造函數(shù)/原型方式、動(dòng)態(tài)原型方式、混合工廠方式。我覺得混合方式和動(dòng)態(tài)原都比較好,在對(duì)象比較復(fù)雜的情況易用混合方式,在對(duì)象定義簡(jiǎn)單的情況下用動(dòng)態(tài)原型方式更為直觀。

    第四章 繼承

    為了安全,不能繼承本地類和宿主類?

    JS中沒有真正意義上的繼承,都是模仿繼承機(jī)制,常用的有三模仿繼承的機(jī)制:對(duì)象冒充、call()方法、apply()方法(實(shí)驗(yàn))、原型鏈方式(實(shí)驗(yàn))。通過比較還是用混合的方式比較好,用call()方法繼承屬性,用原型鏈方式繼承方法。

    另外利用第三方JS庫可以使用其他的繼承方式,如:zInheritxbObjects

    第五章 瀏覽器中的JS

    前三張都是對(duì)核心ECMAScript的討論,以下章節(jié)都是與WEB有關(guān)的內(nèi)容。

    XHTML中大于、小于等特殊方法不能被正確識(shí)別?(P115(實(shí)驗(yàn))

    BOM:提供了獨(dú)立于內(nèi)容而與瀏覽器窗口進(jìn)行交互的對(duì)象。

    Ø         Window對(duì)象表示整個(gè)瀏覽器窗口。如果使用框架,每個(gè)框架都有自己的window對(duì)象,存放在Frames集合中,調(diào)用window對(duì)象的屬性和方法時(shí),不必要明確引用它。

    Window對(duì)象的方法有:

    窗口操作:moveBy()moveTo()resizeBy()resizeTo()

    獲取位置和大小:screenLeft()screenTop()

    導(dǎo)航和打開新窗口:JS可以導(dǎo)航到指定的URL,并用window.open()方法打開窗口,該方法接受4個(gè)參數(shù),即要載入頁面的URL、新窗口的名字、特性字符串、是否替換當(dāng)前頁面的Boolean值。這個(gè)方法返回一個(gè)window對(duì)象的引用值。Openner屬性存放打開它的窗口的引用。

    彈出系統(tǒng)對(duì)話框:alert()confirm()prompt()

    狀態(tài)欄:window對(duì)象的兩個(gè)屬性statusdefaultStatus

    暫停和時(shí)間間隔:setTimeOut()clearTimeout()setInerval()clearInterval()。(練習(xí)使用)

    歷史:history對(duì)象完成。

    Ø         Document對(duì)象:由一系列的集合組成,如anchorsappletsembedsformsimageslinks。方法有write()writeln()open()close()

    Ø         Location對(duì)象:表示載入窗口的URL,他也可以解析URL,它包含的屬性有hashhosthostnamepathnameportprotocolsearch。方法有:replace()reload()toString()

    Ø         Navigator對(duì)象:一個(gè)重要的用途就是檢測(cè)瀏覽器類型及版本,在chapter 8將詳細(xì)介紹。

    Ø         Screen對(duì)象:用于用戶獲取屏幕信息,它包含的屬性有availHeightavailWidthcolorDepthHeightwidth

    第六章 DOM基礎(chǔ)

     

    起源:XML是從SML派生而來的,SGML有許多奇怪的語法規(guī)則,解析SGML文檔非常困難。XML去掉了SGML許多另人頭疼的隨意語法,使解析XML變得容易。XML的主要目的是使用文本以結(jié)構(gòu)化的方式來表示數(shù)據(jù)。ML—標(biāo)記語言。(待續(xù))

    第八章 檢測(cè)瀏覽器和操作系統(tǒng)

     

    Ø         對(duì)象特征檢測(cè)法:判斷瀏覽器是否支持某對(duì)象/特征,而不在乎瀏覽器的真正身份,此方法簡(jiǎn)單,問題是不能檢測(cè)瀏覽器的具體類型。

    Ø         User_agent檢測(cè)法:原理:每個(gè)訪問望阿站的程序都會(huì)提供一個(gè)user_agent字符串來向服務(wù)器確定它的身份。用mavigator.userAgent可以得到此字符串,這個(gè)字符串是user_agent方式檢測(cè)瀏覽器的基礎(chǔ)。

    當(dāng)然了記住各瀏覽器的user_agent字符串將給你帶來編程時(shí)的方便,但是好象不容易。(有必要嗎?)

    user_agent字符串簡(jiǎn)史:了解它,可以讓你更容易第記住瀏覽器的user_agent字符串。

    Ø         瀏覽器檢測(cè)腳本:此部分屬于公用代碼,應(yīng)該寫到一個(gè)公用文件中,每個(gè)項(xiàng)目都可以直接用,我所參與的項(xiàng)目中有這些腳本文件嗎?

    navigator.appVersion不就可以確定瀏覽器版本了嗎?為什么還要用user_agent方式獲取?

    書中只討論windowsmacintosh平臺(tái)?

    練習(xí):寫一個(gè)用于比較來年感個(gè)版本號(hào)大小的函數(shù);寫一個(gè)用于檢測(cè)是否為IE和檢測(cè)IE版本號(hào)的函數(shù)。

    Ø         OS檢測(cè)腳本:用navigator.platform來檢測(cè)OS

    練習(xí):寫一個(gè)檢測(cè)windows版本的程序。

    第九章 事件

    事件流:IE的冒泡型事件留、Netscape的捕獲型事件留及DOM事件留。

    事件處理函數(shù):給元素附加事件處理函數(shù)在IEDOM有不同的實(shí)現(xiàn)方式。在IE中每個(gè)元素都有attachEvent()detachEvent()方法;在DOM中有對(duì)應(yīng)的addEventListener()removeEventListener()方法。

    事件對(duì)象:包含發(fā)生事件時(shí)鼠標(biāo)、鍵盤等信息的對(duì)象。

    IE中這些信息被包含在event對(duì)象中。熟記event對(duì)象的屬性和方法P234

    事件類型:

    Ø         熟記鼠標(biāo)事件:clickdblclickmouseoutmouseovermouseupmousemove

    每個(gè)鼠標(biāo)事件都會(huì)給event對(duì)象的以下屬性添入值:坐標(biāo)屬性、Type屬性、srcElement屬性、shiftKey ctrlKey altKeybutton屬性。鼠標(biāo)事件的順序。

    此節(jié)內(nèi)容可以結(jié)合第十一章內(nèi)容學(xué)習(xí)。

    Ø         鍵盤事件:keyDown—鍵盤上按下某鍵時(shí)觸發(fā),針對(duì)所有鍵。keyPress—按下鍵并產(chǎn)生一個(gè)字符時(shí)觸發(fā),所以按下shiftartctrl及方向鍵時(shí)并不會(huì)觸發(fā)此事件。

    HMTL事件load事件、unload事件、select事件、change事件、resize事件、scroll事件blur事件、body的兩個(gè)屬性—scrollLeftscrollTop。結(jié)合第十一章學(xué)習(xí)。

    第十章 高級(jí)DOM技術(shù)

    CSS中樣式特性名字的書寫與JS中不同,在Style對(duì)象中,兩個(gè)單詞的樣式表示方法是匈牙利表示法。

    Style對(duì)象可以操縱內(nèi)聯(lián)樣式的值。它有個(gè)cssText屬性,存儲(chǔ)此CSS樣式的字符串。

    DOM樣式的方法:

    提示:此類方法在IE中不實(shí)用。DOMStyle對(duì)象中包含方法:getPropertyValue()getpropertyPriority()item()removeProperty()serProperty()

    自定義鼠標(biāo)提示:原意鼠標(biāo)移到某元素上顯示title提示;

    現(xiàn)意當(dāng)鼠標(biāo)移到某元素上時(shí),讓某他原本隱藏的DIV顯示在某特定位置(一般在鼠標(biāo)旁邊)

    可折疊區(qū)域:介紹一個(gè)具體應(yīng)用。很不錯(cuò)的,練習(xí)。

    訪問樣式表:樣式表<style/>元素中或在外部樣式表中定義的CSS樣式。

    Document.styleSheets可以獲得樣式表的引用。它有一些常用的屬性—disabledtype等。

    樣式表引用對(duì)象有個(gè)cssRulesrules屬性,它包含樣式表中所有的CSS規(guī)則,它是一個(gè)集合。

    最終樣式:它由所有內(nèi)聯(lián)樣式和CSS規(guī)則計(jì)算出的最終結(jié)果,也即其作用的CSS樣式元素集合。在IE中可以用style.currentStyle來獲得。

    innerTextinnerHTML

    不解:oDiv.innerText = oDiv.innerText將刪除oDiv標(biāo)簽。

    IE中的范圍:

    創(chuàng)建范圍—creatTextRange()

    選擇某個(gè)區(qū)域:findText()

    移動(dòng)選區(qū):move()moveStart()moveEnd()expand()

    與范圍內(nèi)容交互:text屬性和pasteHTML()方法;

    折疊范圍:collapse() 就是清楚removeclear的意思?

    比較范圍:compareEndPoints()isEqual()isRange()

    復(fù)制范圍:duplicate()

    范圍的引用:值得一看,30秒鐘。

    第十一章 表單和數(shù)據(jù)完整性

    <form/>元素的特性:methodactionenctypeacceptaccept_charset

    表單元素的共性:disabledformblurfocus()onblur()onfocus()

    僅提交一次:當(dāng)點(diǎn)擊提交按鈕后禁用它,是用戶不會(huì)重復(fù)提交多次。

    不能用submit按鈕并用onclick禁用,因?yàn)樵诒韱翁峤磺耙呀?jīng)被禁用,這講導(dǎo)致表單不被提交,怎么用普通的button就可以?

    Reset:即使使用reset()方法, onreset事件函數(shù)仍會(huì)被觸發(fā)。

    文本框事件:blurfocuschangeselect,其中change事件是在文本框失去焦點(diǎn)后才被觸發(fā)。

    自動(dòng)選中文本:一個(gè)具體應(yīng)用。當(dāng)獲到焦點(diǎn)時(shí)便選中文本。

    自動(dòng)切換到下一個(gè):一個(gè)具體應(yīng)用。代碼寫得不錯(cuò),值得一看。

    限制textarea的字符數(shù):雖然textarea不能用maxlength屬性來限制最大輸入長(zhǎng)度,但仍可以設(shè)置manlength屬性可,并可以通過getAttibute()來獲取這個(gè)值。

    允許/阻止文本框中的字符:阻止無效字符,只允許輸入有效字符。看代碼,挺有用的。

    不要忘記粘貼:禁止粘貼;失去焦點(diǎn)時(shí)進(jìn)行驗(yàn)證。

    使用上下方向鍵操作數(shù)字文本(自增、自減):

    列表和組合框:只要給 <select/>元素添加size特性就可以使組合框變?yōu)榱斜怼?span>Multiple屬性用于設(shè)置是否可多選,默認(rèn)不能。

    刪除選項(xiàng):將某想置為null;用remove()方法。

    移動(dòng)選項(xiàng):可以直接從一個(gè)列表框移到另一個(gè)列表框?(實(shí)驗(yàn))

    重新排序選項(xiàng):重要用到DOM中的insertBefore()函數(shù)。

    自動(dòng)提示文本框:創(chuàng)建匹配的Array數(shù)組;獲取匹配的只的Array;將選中的條目添加到文本框。再看代碼,寫得很好。
     

    第十二章 對(duì)表格排序

    這一章探索了如何JavaScript將很多基于服務(wù)器端的功能轉(zhuǎn)移到客戶端,即對(duì)HTML表格進(jìn)行排序。這一章完全沒有新的語法知識(shí),完全是對(duì)以前章節(jié)知識(shí)的應(yīng)用。練習(xí)用一下一切OK

    知識(shí)要點(diǎn):Array對(duì)象的sort()方法可以接受一個(gè)客戶化的比較函數(shù)作為參數(shù)。

    建立一個(gè)能處理各種數(shù)據(jù)類型的比較函數(shù)。

    Reverse()倒序。

    <> 可以對(duì)StringDateNumber類型的數(shù)據(jù)進(jìn)行比較?

    可以為HTML元素添加自定義特性。

    第十三章 拖放

    系統(tǒng)拖放:由操作系統(tǒng)處理完成的拖放行為;

    模擬拖放:創(chuàng)建可以跟著鼠標(biāo)移動(dòng)的絕對(duì)定位層。

    另外還可以利用aDragDrop庫來實(shí)現(xiàn)拖放功能。

    第十四章 錯(cuò)誤處理

     

    JS中的錯(cuò)誤:發(fā)生在解析(編譯)時(shí)的語法錯(cuò)誤;

    JS中的異常:在運(yùn)行時(shí)發(fā)生。如window.yangaiyou();語法正確,但會(huì)發(fā)生異常。

    l         onerror對(duì)象:在window對(duì)象和圖象對(duì)象?上都有onerror事件處理函數(shù),當(dāng)頁面發(fā)生錯(cuò)誤時(shí),onerror事件將在window對(duì)象上觸發(fā)。當(dāng)頁面上的圖象不能載入時(shí)會(huì)在image對(duì)象上觸發(fā)。

    可以這樣定義onerror函數(shù)

    window.onerror = function(sMessage,sUrl,sLine){};

    onerror函數(shù)的三個(gè)參數(shù)用于確定錯(cuò)誤確切的信息,代表的意思依次為:錯(cuò)誤信息;發(fā)生錯(cuò)誤的文件;發(fā)生錯(cuò)誤的行號(hào)。

    l         Try...catch語句:

    Catch語句捕獲的是一個(gè)Error對(duì)象,他有namemessage屬性,name指明錯(cuò)誤的類型或叫名字;message指明具體的錯(cuò)誤信息。

    也可以用類似throw new Error(“發(fā)生了錯(cuò)誤!”)的語句來拋出異常信息。

    第十五章 javascript中的XML


    l        
    IE中對(duì)XML DOM的支持:是基于ActiveXMXXML庫。用ActiveXObject類來創(chuàng)建ActiveX對(duì)象,形如

    Var oXmlDom = new ActiveXObject(“Microsoft.XmlDom”);

    參數(shù)為要實(shí)例化的ActiveX對(duì)象的字符串代號(hào)。

    如何確保使用最新的XML DOM

    創(chuàng)建XML DOM 對(duì)象的下一步自然就是載入XML文件,XML DOM提供了兩種方法來載入XML文件:load()loadXML()。前者用于從服務(wù)器端載入XML文件;后者可以直接輸入字符串來載入。如:

    oXmlDom.load(“./treeAction.do”);

    執(zhí)行完這行代碼oXmlDom對(duì)象就會(huì)包含能表示XML文件結(jié)構(gòu)的一個(gè)DOM文擋,這樣就可以使用DOM所有的特性和方法了。

    默認(rèn)采用異步方式載入,當(dāng)readyState值發(fā)生變化時(shí)會(huì)觸發(fā)onreadystatechange函數(shù),當(dāng)其值為4時(shí)表示XML文件已完全載入,通常這時(shí)就要調(diào)用回調(diào)函數(shù)。

    我們應(yīng)該在XML文件載入后立即檢查錯(cuò)誤,錯(cuò)誤信息都包含在parseError對(duì)象中,我們可以自己創(chuàng)建錯(cuò)誤提示,通常是由于XML文件格式錯(cuò)誤造成的。

    AJAX必備知識(shí)。

    l         xPath小語言:

    它提供了如何定位一個(gè)或多個(gè)結(jié)點(diǎn)的功能。它分兩部分:上下文結(jié)點(diǎn);結(jié)點(diǎn)模式。前者給出要匹配文檔的開始位置;后者是一個(gè)字符串形式的選擇器,可以想象成正則表達(dá)式。

    IE中提供selectNodes()方法來返回匹配的結(jié)點(diǎn)集合,參數(shù)為要匹配的字符串(正則表達(dá)式)。形如:

    oXmlDom.documentElement.selectNodes(“employee/name”);

    選擇了所有<employee/>元素下的<name/>元素。

    l         XSLT 可擴(kuò)展樣式表語言轉(zhuǎn)換:

    XSLT可以對(duì)XML文件進(jìn)行操作,將其轉(zhuǎn)換成其他的文本格式,入HTMLXSLT文件稱為樣式表,由一些模板組成,通過為不同元素和條件定義模板,XSLT成了XML文件的轉(zhuǎn)換器。

    第十六章 客戶端與服務(wù)器端的通信

    第十七章 Web服務(wù)

    第十八章 與插件進(jìn)行交互

    第十九章 部署問題

    第二十章 JS的文萊

    posted on 2007-07-01 13:50 楊愛友 閱讀(1948) 評(píng)論(10)  編輯  收藏 所屬分類: java相關(guān)技術(shù)

    FeedBack:
    # re: javascript讀書筆記 2007-07-03 11:25 飄搖
    第一頁有個(gè)錯(cuò)別字  回復(fù)  更多評(píng)論
      
    # re: javascript讀書筆記 2007-07-03 11:31 飄搖
    終于走向正路,哈哈 繼續(xù)努力!  回復(fù)  更多評(píng)論
      
    # re: javascript讀書筆記 2007-07-03 12:23 
    哪個(gè)字錯(cuò)了里,給我改過來。  回復(fù)  更多評(píng)論
      
    # re: javascript讀書筆記 2007-07-04 08:55 飄搖
    寫本*問*的目的是對(duì)最近看過的篇幅進(jìn)行簡(jiǎn)單的總結(jié),"問"對(duì)嗎  回復(fù)  更多評(píng)論
      
    # re: javascript讀書筆記 2007-07-04 16:57 飄搖
    打開一個(gè)網(wǎng)頁時(shí) 總是不斷的跳出好多網(wǎng)頁,但是沒死機(jī),這是為什么 ,該怎么辦  回復(fù)  更多評(píng)論
      
    # re: javascript讀書筆記 2007-07-04 17:02 
    或者裝個(gè)攔截工具,或者叫他們網(wǎng)站的開發(fā)者把代碼改一下,后者比較好,哈哈~~  回復(fù)  更多評(píng)論
      
    # re: javascript讀書筆記[未登錄] 2007-07-06 16:05 小祝
    呵呵~記得8號(hào)來接我哈~~  回復(fù)  更多評(píng)論
      
    # re: javascript讀書筆記 2007-07-06 16:24 
    盡量吧,單愿沒有忘記,哈哈  回復(fù)  更多評(píng)論
      
    # re: javascript讀書筆記 2007-10-26 08:16 fds
    fdsgfds  回復(fù)  更多評(píng)論
      
    # re: javascript讀書筆記 2008-01-15 09:52 小吳
    嚴(yán)重支持!!!寫的很好!!!可見有一定的基礎(chǔ)!!但是進(jìn)步的空間還很大!!
    建議嘗試自己寫一個(gè)小框架(對(duì)提高設(shè)計(jì)能力有很大的幫助)  回復(fù)  更多評(píng)論
      
    美麗涵涵童裝店
    親,說我博客名字,給你們打折!
    主站蜘蛛池模板: 亚洲精品偷拍视频免费观看| h视频在线观看免费完整版| 香港经典a毛片免费观看看| 亚洲天然素人无码专区| 亚洲人成在线播放| 精品久久亚洲中文无码| 亚洲卡一卡二卡乱码新区| 国产色在线|亚洲| 99久久婷婷国产综合亚洲| 亚洲综合国产成人丁香五月激情 | 久久福利资源网站免费看| 120秒男女动态视频免费| 16女性下面扒开无遮挡免费| 香蕉97超级碰碰碰免费公| 午夜影视在线免费观看| 永久免费bbbbbb视频| 内射无码专区久久亚洲| 国产精品亚洲综合专区片高清久久久| 在线亚洲精品自拍| 亚洲AV无码一区二区二三区软件 | 在线观看亚洲成人| 亚洲嫩模在线观看| wwwxxx亚洲| 国产精品亚洲va在线观看| 一级做α爱过程免费视频| 国产免费无码AV片在线观看不卡| 久久免费动漫品精老司机| 国产成人精品免费午夜app| 成年丰满熟妇午夜免费视频| 波多野结衣一区二区免费视频| 国产亚洲精品无码拍拍拍色欲| 久久综合图区亚洲综合图区| 亚洲综合久久1区2区3区| 亚洲日本中文字幕天天更新| 尤物视频在线免费观看| 免费毛片a线观看| 成人毛片手机版免费看| 亚洲乱码中文字幕综合234| 亚洲精品无码不卡| 亚洲日韩AV无码一区二区三区人| 黄色网页在线免费观看|