前端開發(fā)總結(jié)
----B-----
:靜態(tài)
(java-outputStream->HTML+CSS+JS->IE):動(dòng)態(tài)(java-outputStream->HTML+CSS+JS->IE):動(dòng)態(tài)HTML基礎(chǔ)標(biāo)簽:div/p/table/hn/a…
-:cellpaddingcellspacingborderwidth=”300|40%”標(biāo)簽語(yǔ)法:…:描述頁(yè)面元素:顯示
Html功能:
顯示:基礎(chǔ)標(biāo)簽
收集:
CSS選擇器:html類ID
ID>類>html
:內(nèi)聯(lián)CSS
內(nèi)部:3種選擇器….外部:my.css{3種選擇器}
JS事件:
dom:
document.getElementByID()document.getElementsByName()
document.getElementsByTagName()
var:不嚴(yán)格區(qū)分類型//varageage=10;
window,history,location,screenalertconfirm//表單提交方式
document.forms[0].submit()…………..Js驗(yàn)證表單數(shù)據(jù)------------------------------IEsubmit-----------------------------------------Socket:java.net.*ServerSocket:SocketC(Browser:IE:FF)Sockets=newSocket(“IP”,8080)
in=s.getInputStream()out=.s.getOutputStream()
HTTP:FTP:SMTP:POP3HTTP:Request
POST|GET/hello.jspHTTP/1.1HEADERS……..HEADERS……..
BODYResponseHTTP/1.1200OK
HEADERS……..HEADERS……..
S(Tomcat)
ServerSocketss=newServerSocket(8080)ss.accept();inout
BODY
Tomcat:RequestmsgHttpServletRequestdoGet(request,response)doPost(t,response){
//狀態(tài)追蹤
Cookis:Session
URL重寫:客戶端禁止cookieResponse.encodeURL()
HttpServletRequest(out)Browser
判斷URL對(duì)照web.xml
ifurl==Html----response(out)---write(a.html)---flush
ifurl==jsp----jspc---a_jsp.java---javac---a_jsp.class---執(zhí)行servlet流程ifurl==servlet---判斷要執(zhí)行servlet實(shí)例是否存在ifnotexist{newServlet()init():1Thread【service():n】}ifexist{Thread【service():n】}servletdestory():
request.getCharacterEncoding(“UTF-8”);request.getParameter(”myage”);…………..
newDAO().insert();//jdbcsqlDBnewLogic().do();
Response.setCharacterEncoding(“UTF-8”)//中文//回應(yīng)
Response.getWriter().print(“”);//資源訪問
Request.getRequestDispatcher(“a.jsp”).forward(request,response);Request.getRequestDispatcher(“a.jsp”).include(request,response);Response.sendRedirect(“”);
//scope
[page]/request/session.applicationJsp
標(biāo)簽用法:
表達(dá)式/腳本/表明EL==
JSTL==腳本
IEservlet(準(zhǔn)備數(shù)據(jù):daologic:scope)-forward--???.jsp---IE(能過濾非法字符)doGet(){
newDAO(){Class.forName(“”);
Connectionconn;
stmt=conn.createStatement();
pstmt=conn.preparedStatement("select*fromawhereid=?");int=stmt.executeUpdate(“insert/update/delete”);rs=stmt.executeQuery(“select”)
while(rs.next()){re.getType(index|colName)};//sql注入//ACID(意義)
Conn.setAutoCommit(false);…..
Conn.commit();
Conn.rollback();//DCL:commitrollback}}ER===關(guān)系===NF===DDL(script)===DBDML:selectinsertupdatedeleteselect:子查詢、關(guān)聯(lián)、連接function-procedure:PL/SQLimpexp
擴(kuò)展閱讀:WEB前端開發(fā)經(jīng)驗(yàn)總結(jié)
WEB前端開發(fā)經(jīng)驗(yàn)總結(jié)
發(fā)布時(shí)間:201*-04-201*:05:33來源:作者:shengman點(diǎn)擊:21015
這里跟大家談?wù)剛(gè)人對(duì)WEB前端開發(fā)的一些經(jīng)驗(yàn)(當(dāng)然都是個(gè)人的一些理解,有什么地方說的欠妥或不對(duì)的地方還請(qǐng)包含和指正),這里我就從WEB標(biāo)準(zhǔn)開始吧。WEB標(biāo)準(zhǔn)是什么?
說是WEB標(biāo)準(zhǔn),不過我這里主要是對(duì)XHTML1.1和CSS2.1的一些經(jīng)驗(yàn)總結(jié)。因?yàn)閃EB含蓋的內(nèi)容實(shí)在是太多了,“WEB標(biāo)準(zhǔn)”是一系列標(biāo)準(zhǔn)的總稱,包括HTML4.0、XHTML1.1、CSS2.1、XML1.0、RSS2.0、ECMAScript1.1、DOM1.0等等。所以這里要跟大家指出來一下,WEB標(biāo)準(zhǔn)不是我們所說的DIV+CSS。剛剛上面提到了——DIV+CSS,這里要說明下,這樣說其實(shí)是不正確的。DIV+CSS準(zhǔn)確的說法(個(gè)人的理解)應(yīng)該是:采用W3C推薦的WEB標(biāo)準(zhǔn)中的XHTML1.1結(jié)合CSS2.0樣式表制作頁(yè)面的方法,DIV應(yīng)該指的是XHTML標(biāo)簽,而CSS顯示是指的CSS樣式表了。采用WEB標(biāo)準(zhǔn)開發(fā)的好處
那么W3C為什么會(huì)推薦這樣的頁(yè)面制作方法呢?下面我們就簡(jiǎn)單的看看采用WEB標(biāo)準(zhǔn)開發(fā)(個(gè)人理解的)相對(duì)以前TABLE布局的優(yōu)勢(shì)有哪些?1、節(jié)約運(yùn)營(yíng)成本
看看我們的WEB標(biāo)準(zhǔn)制作方法是如何做到的?
采用WEB標(biāo)準(zhǔn)制作,我們可以做到表現(xiàn)很形式的分離,我們用XHTML來表現(xiàn)(數(shù)據(jù)),用CSS來控制(頁(yè)面元素呈現(xiàn)的)形式。寫的好的頁(yè)面,XHTML代碼中基本上都是用戶要看的數(shù)據(jù),還其他修飾性的東西,全部由我們的CSS來控制。這樣一來我們的(XHTML)頁(yè)面的體積就大大減小了,這樣你在帶寬上的費(fèi)用就會(huì)大家降低了,這個(gè)怎么降低的,你可以想象一下,YAHOO的首頁(yè)小1K,100W個(gè)人一起訪問,那么帶寬節(jié)約了多少?而且可以更充分的利用帶寬。
而我們的CSS控制了,所有的頁(yè)面元素的樣式,現(xiàn)在想改網(wǎng)站的整體風(fēng)格,你只需要花幾分鐘修改一下一個(gè)CSS文件,就可以輕松搞定了。維護(hù)的成本也下來了,省了不少錢了吧?還有,你開這個(gè)頁(yè)面的速度會(huì)快很多啊,一個(gè)讓你等半分鐘的頁(yè)面,除非里面的信息對(duì)你很有用,不然我們大家基本都沒有太多的時(shí)間去用來等待的。
2、對(duì)用戶友好更友好,且有機(jī)會(huì)獲得更多的用戶現(xiàn)在來說說用戶友好。首先我想把我們的用戶來分下類。第一類:普通用戶(每個(gè)訪問我們網(wǎng)站的人);第二類:搜索引擎;
采用WEB標(biāo)準(zhǔn)開發(fā)的頁(yè)面,結(jié)構(gòu)清晰,頁(yè)面體積小,瀏覽器兼容性好。普通用戶訪問的時(shí)候,頁(yè)面打開速度快,而且不管用戶使用那種瀏覽器,都能夠正常訪問(顯示)頁(yè)面,且頁(yè)面的結(jié)構(gòu)清晰,要找的數(shù)據(jù)可以很方便的瀏覽到。
而對(duì)搜索引擎來說,一個(gè)好的采用WEB標(biāo)準(zhǔn)開發(fā)的頁(yè)面,都是做過SEO優(yōu)化的,它訪問起來很友好,很容易理解你的頁(yè)面中哪里是標(biāo)題(H1~H6標(biāo)簽),哪里是段落(p標(biāo)簽),哪里是段落里要強(qiáng)調(diào)的內(nèi)容(strong標(biāo)簽)等,它可以很容易的分析出來。而一個(gè)SEO好的站點(diǎn),大家都知道,被搜索引擎收錄的機(jī)會(huì)更多,這個(gè)也意味著您的網(wǎng)站會(huì)被更多的普通用戶訪問到,給你的站點(diǎn)帶來更多的用戶。
一個(gè)能幫我們省下大筆費(fèi)用,提高工作效率。同時(shí)又能夠提高頁(yè)面瀏覽速度,對(duì)用戶友好,甚至能夠不花錢宣傳,就能給你帶來更多用戶的技術(shù)。你說你會(huì)不會(huì)去使用它?這個(gè)也正式我們的W3C推薦使用WEB標(biāo)準(zhǔn)開放網(wǎng)站的原因啊。而這個(gè)技術(shù)也得到了我們廣大用戶的認(rèn)可,所以您現(xiàn)在需要學(xué)習(xí)WEB標(biāo)準(zhǔn)啊。溫習(xí)完了基礎(chǔ)課程,現(xiàn)在正式開始講XHTML和CSS的技巧了。合理的布局
有朋友會(huì)開始問了,怎么一開始就開始講合理的布局了呢?前面我們提到了一些知識(shí)點(diǎn)——“結(jié)構(gòu)清晰、SEO優(yōu)化、頁(yè)面體積小、XHTML代碼中基本上都是用戶要看的數(shù)據(jù)”。這些東西,都是我們做了合理布局的結(jié)果。而且我個(gè)人覺得,我們采用WEB標(biāo)準(zhǔn)制作的一切都是從這個(gè)知識(shí)點(diǎn)開始的,所以我這里就先來說這個(gè)話題。
那么大家又會(huì)開始問,怎樣的一個(gè)頁(yè)面,才算是合理的布局的呢?這個(gè)問題問題問得好,也是我們大家剛開始學(xué)用WEB標(biāo)準(zhǔn)的問得最多的問題之一,我也曾經(jīng)常被這個(gè)問題所困擾,這里就說說我對(duì)合理布局的一些理解。
在開始講合理布局的頁(yè)面要達(dá)到的要素前,我們還是用個(gè)實(shí)例來講解會(huì)更直觀些。先來看看這個(gè)圖片:不錯(cuò),這個(gè)是一個(gè)文章詳細(xì)頁(yè),沒有左右兩欄布局,不過這里我重點(diǎn)要講的是合理的布局,在稍后的文章中我會(huì)詳細(xì)的介紹浮動(dòng)元素。好,回到剛才的話題,大家看到了這個(gè)頁(yè)面了。
我這里先把代碼寫給大家看看(省略了部分代碼):
Ajax標(biāo)簽導(dǎo)航實(shí)例詳解
海嘯的地盤--享受生活,享受每一天!
站內(nèi)搜索:
全部主題(X)HTMLCSSJavascriptXML
ASP/ASP.NET
ARTICLESTOPICSABOUTCONTACTGESTBOOKFEED
Ajax標(biāo)簽導(dǎo)航實(shí)例詳解作者/程序設(shè)計(jì):domain來源:domain.com發(fā)布時(shí)間:201*年4月28日代碼篇
之前整理發(fā)表了《XMLHTTPRequest的屬性和方法簡(jiǎn)介》,它Ajax要使用的核心的技術(shù)之一,現(xiàn)在就來實(shí)際運(yùn)用它。這個(gè)Ajax標(biāo)簽導(dǎo)航,是我很久前就寫的一個(gè)腳本,很實(shí)用的(還被很多網(wǎng)站收錄了哦),現(xiàn)在拿它來做實(shí)例講解吧!當(dāng)然個(gè)人能力有限,有什么不對(duì)的地方還請(qǐng)多包含!
效果大家看到了,核心功能有:1、將當(dāng)前選中標(biāo)簽以特殊的樣式顯示
2、將異步加載的頁(yè)面信息顯示到指定的DOM節(jié)點(diǎn)中
我們來看看處理腳本的代碼吧:
程序代碼:ajaxtab.js*使用方法:$("frmSearch")
============================================================*/function$(i){
if(!document.getElementById)returnfalse;if(typeofi==="string"){
if(document.getElementById&&document.getElementById(i)){//W3CDOM
returndocument.getElementById(i);}
elseif(document.all&&document.all(i)){//MSIE4DOMreturndocument.all(i);}
elseif(document.layers&&document.layers[i]){//NN4DOM..note:thiswon"tfindnestedlayersreturndocument.layers[i];}else{
returnfalse;}}
else{returni;}}//-->
id="news"-news就是我們的導(dǎo)航標(biāo)簽的ID;
id="newsCnt"-newsCnt就是我們要寫入信息的目標(biāo)DOM節(jié)點(diǎn);class="first"-first當(dāng)前(第一個(gè))標(biāo)簽的樣式;
id="news-0"-news-0通過”-“分開,我們就分別可以得到news(導(dǎo)航標(biāo)簽ID),0(標(biāo)簽[li]在導(dǎo)航標(biāo)簽中的索引值)
網(wǎng)站重構(gòu)-超鏈接-標(biāo)簽間的分割線
我羅列的這些東西,相信大家開始看出了些頭緒了,呵呵,不過別急!在我們看處理的腳本之前,先讓我們來看看導(dǎo)航標(biāo)簽的樣式,主要是看看我們對(duì)分割線的處理(一點(diǎn)CSS處理的技巧)。
本來想偷個(gè)懶,讓大家看我上邊說的那篇文章,想想也就是Ctrl+C&Ctrl+V,都貼出來吧!呵呵。!
不過還沒有完,最后要說的就是innerHTML這個(gè)特性,這里我們還要感謝微軟啊,innerHTML就是它的專利,我們就是用它來改變指定DOM內(nèi)的HTML字符串的,而不用刷新頁(yè)面。詳細(xì)的信息大家還是google一下吧,我也要休息下。!喝口茶先。-^!
以上講了這么多,我們最后來看看,我們這個(gè)ajax標(biāo)簽導(dǎo)航都用到了那些技術(shù)吧:XHTMLCSSJavascriptDOM
XMLHttpRequest對(duì)象innerHTML
還有XML,我們這個(gè)例子沒有涉及到。東西雖小,包含的(web前端開發(fā))知識(shí)可是都用到了啊,我把我會(huì)的點(diǎn)東西都端出來了(要失業(yè)了),呵呵!
當(dāng)然我很喜歡跟大家多交流,以后有時(shí)間,我們?cè)趤碚務(wù)凜SS的HACKS技巧,JavascriptDOM編程等等的,今天就收工了,謝謝捧場(chǎng)先。!
Copyright©201*-201*domain.com,Allrightsreserved.PoweredBy:domain
看出來什么沒有?(代碼是很多)可能大家已經(jīng)發(fā)現(xiàn),整個(gè)頁(yè)面里基本上都是用戶要看的數(shù)據(jù),其中只包含了很少(必要)的布局(XHTML)標(biāo)簽(請(qǐng)?jiān)试S我這么說)。整個(gè)頁(yè)面基本都是由最基礎(chǔ)的h1~h6、p、ul、ol、li、form、div標(biāo)簽來實(shí)現(xiàn)的。
說到這里就要講到我在前面提到的“結(jié)構(gòu)清晰、SEO優(yōu)化、頁(yè)面體積小、XHTML代碼中基本上都是用戶要看的數(shù)據(jù)”,看看我的這個(gè)例子做到了沒有?
結(jié)構(gòu)清晰--也就是我們常說的,XHTML標(biāo)簽要結(jié)構(gòu)化(語(yǔ)意化)。什么叫結(jié)構(gòu)化?
由于個(gè)人認(rèn)為這個(gè)知識(shí)點(diǎn)是十分重要的,所以請(qǐng)?jiān)试S我在這里多羅嗦幾句,我們采用WEB標(biāo)準(zhǔn)的方法制作頁(yè)面的優(yōu)勢(shì)就體現(xiàn)在頁(yè)面結(jié)構(gòu)清晰。我們以前用table布局的時(shí)候,我們的表現(xiàn)(數(shù)據(jù))和形式(布局樣式)是混在一起的,有很多冗余的數(shù)據(jù)混雜在一起,而大家再看看我上面給大家展示的代碼,很明顯,結(jié)構(gòu)十分清晰。
說了半天,還是沒有說什么是結(jié)構(gòu)化,什么才是結(jié)構(gòu)清晰。坎灰。還記得我剛才提到的那幾個(gè)標(biāo)簽嗎?h1~h6--如果你要顯示的數(shù)據(jù)是作為標(biāo)題顯示的時(shí)候,就用這些標(biāo)簽,因?yàn)檫@個(gè)標(biāo)簽的意思就是說,這個(gè)是一個(gè)標(biāo)題,不僅我們的用戶很容易理解h-head的英文字母縮寫,我們的另外一個(gè)用戶搜索引擎也可以很容易理解它。呵呵,看到了吧,一個(gè)充分結(jié)構(gòu)化的頁(yè)面,對(duì)用戶是十分友好的。p--Paragraph(段落)ul--unorglizedlist(無序的列表)ol--orglizedlist(有序的列表)li--listitem(列表項(xiàng))form--表單div--division(區(qū)域)
我這么一寫,大家估計(jì)開始明白了,原來XHTML標(biāo)簽是有著自己的意義的(至于其他的標(biāo)簽的語(yǔ)意義,大家可以自己到W3C看看它的解釋,也可以查看語(yǔ)義化你的HTML標(biāo)簽和屬性),所以我們講要語(yǔ)意化的意思,就是用合理的標(biāo)簽來顯示數(shù)據(jù),比如前面提到的,是標(biāo)題,就應(yīng)該用h1~h6標(biāo)簽,如果是一個(gè)段落的介紹文字,那么就應(yīng)該使用p標(biāo)簽,如果是顯示的一個(gè)沒有順序的列表,就應(yīng)該用ul標(biāo)簽,如此...所以看這個(gè)例子里
Ajax標(biāo)簽導(dǎo)航實(shí)例詳解
這么寫就是很合理的,h2標(biāo)簽就說明這里是個(gè)標(biāo)題。而這么寫:復(fù)制內(nèi)容到剪貼板代碼:.title{
font-size:18px;...}
Ajax標(biāo)簽導(dǎo)航實(shí)例詳解
雖然你用了strong來強(qiáng)調(diào)說明這部分文字,但是還是沒有h2標(biāo)簽來的直接明了。還有這么寫
Ajax標(biāo)簽導(dǎo)航實(shí)例詳解
也不是我們推薦的,可以不用嵌套層的地方,我們盡量不要去過多的嵌套層,減少嵌套會(huì)讓我們的瀏覽器解析起來會(huì)更容易,速度更快。
所我們使用WEB標(biāo)準(zhǔn)開發(fā)頁(yè)面,絕對(duì)不是單純的把以前的table換成DIV就OK了。而采用標(biāo)準(zhǔn)制作頁(yè)面,也不意味著我們就不使用table。只要把握我剛才說的原則,使用合理的標(biāo)簽顯示相應(yīng)特征的數(shù)據(jù)。其實(shí)我們的table標(biāo)簽是一個(gè)很好的用來顯示二維數(shù)據(jù)的標(biāo)簽,而table標(biāo)簽也確實(shí)是設(shè)計(jì)出來用來顯示數(shù)據(jù)的,而不是用來布局的,只是我們當(dāng)時(shí)的設(shè)計(jì)師們都用table標(biāo)簽來布局了。。
友情提示:本文中關(guān)于《前端開發(fā)總結(jié)》給出的范例僅供您參考拓展思維使用,前端開發(fā)總結(jié):該篇文章建議您自主創(chuàng)作。
來源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問題,請(qǐng)聯(lián)系我們及時(shí)刪除。