網站建設是指使用標識語言(markup language),通過一系列設計、建模、和執行的過程將電子格式的信息通過互聯網傳輸,最終以圖形用戶界面(GUI)的形式被用戶所瀏覽。簡單來說,網頁設計的目的就是產生網站。簡單的信息如文字,圖片(GIF,JPEG,PNG)和表格,都可以通過使超文件標示語言、可擴展超文本標記語言等標示語言放置到網站頁面上。 運行代碼框: <HTML><HEAD><TITLE> New Document </TITLE><META NAME="Generator" CONTENT="EditPlus"><META NAME="Author" CONTENT=""><META NAME="Keywords" CONTENT=""><META NAME="Description" CONTENT=""></HEAD><BODY><SCRIPT LANGUAGE="JavaScript"><!--//去掉字串中的空格function NoSpace(txt){return (txt.replace(/[\s]+/g,''))}//判斷<aaa>與</aaa>是配對的html標簽function IsGood(txt1,txt2){var txt='<'+'/'+txt1.substr(1);return (txt==txt2)?1:0;}function chk(){//s為模擬的html代碼//var s="d<html>fg<table>sdfg<img><tr>asdfg<td>6456</td>dfg</tr>dsfg</table>d</html>fg";var s=NoSpace(oT.value).toLowerCase();var arrMinus=new Array('<img>','<input>','<meta>','<hr>');for (var i=0;i<arrMinus.length;i++){s=s.replace(arrMinus[i],'');}var arrElement=s.match(/<[/|A-Za-z]+>/ig);//取出所有的<....>格式的字串var stack=new Array();stack[0]='#';k=0;//定義一個順序棧,棧底放入#,k為棧頂指針for (var j=0;j<arrElement.length;j++){if (IsGood(stack[k],arrElement[j])){k--;stack.length--;}//如果配對,棧頂元素出棧else{stack[++k]=arrElement[j];}//如果不配對,新標簽入棧alert(stack[k]);//演示棧頂的內容}(stack[k]=="#")?(document.write("所有的標簽匹配")):(document.write("有的標簽不匹配"));}//--></SCRIPT><TEXTAREA NAME="oT" ROWS="10" COLS="90"><HTML><META><HEAD><TITLE> New Document </TITLE></HEAD><BODY><img><input></BODY></HTML></TEXTAREA><BR><BR>原理:建一個棧,每次碰到一個新標簽,就與棧頂的標簽配對,如果配對,棧頂的標簽就出棧,如果不配對,這個新標簽就進棧,最終,棧如果是空的,說明所有的標簽都是配對的,如果棧不空,說明有不配對的地方<BR>框中是模擬的html代碼,你可以修改后,點下面的按鈕,看是不是匹配。<BR>彈出的對話框是演示棧頂的內容<BR>特點:<BR>1、還不能判斷<...>哪些是合法的html標簽,可以在代碼中直接輸入合法標簽,工作量太大。<BR>2、有的標簽是不需配對的,如<img>,代碼智能判斷為匹配的。<BR>3、目前還不支持標簽后加屬性<BR><BR><INPUT TYPE="button" value="Start" onclick="chk()"></BODY></HTML> [Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]大多數人在上網的時候,都會瀏覽網頁提供給我們的信息。
|