當前位置:蘿卜系統下載站 > 網頁設計教程 > 詳細頁面

DHTML模擬菜單

DHTML模擬菜單

更新時間:2020-01-30 文章作者:未知 信息來源:網絡 閱讀次數:

網站建設是指使用標識語言(markup language),通過一系列設計、建模、和執行的過程將電子格式的信息通過互聯網傳輸,最終以圖形用戶界面(GUI)的形式被用戶所瀏覽。簡單來說,網頁設計的目的就是產生網站。簡單的信息如文字,圖片(GIF,JPEG,PNG)和表格,都可以通過使超文件標示語言、可擴展超文本標記語言等標示語言放置到網站頁面上。

{ 在以前的HTML里,元素的位置只能依次排列,我們很難精確地定位與控制網頁中的一些元素。CSS2Cascading Style Sheet Level 2,層疊樣式單第二版的布局Layout屬性出現并得到瀏覽器的廣泛支持之后,我們不僅可以靜態地實現以上目的,而且可以根據鼠標、鍵盤、時間等預定義好的外界事件動態地改變布局。時下非常流行的網頁中“活動的層”便是它的一種形象的運用,我們這里要講的是如何運用這些屬性結合一些DHTML對象在網頁中實現類似Windows窗口的下拉菜單(如圖所示)。請看以下代碼及詳細說明。

<-- 以下部分應該插在代碼的<head>之后 -->

<style><--

/ 這是一些CSS樣式。其中″btnTD″是按鈕在被按下之前“凸起”的樣式類:邊框被設置為寬度為1個像素的實線,其中左邊框和上邊框顏色為淺色(這里為白色),右下邊框為深色(深灰色),如果背景為灰色的HTML元素(如單元格)使用這個樣式的話,那就非常像一個“凸出”的按鈕;“btnDTD”是按鈕被按下時“凹下”的樣式。 /

.btnTD  border-left 1 solid #ffffff border-right 1 solid #808080

border-top 1 solid #ffffff border-bottom 1 solid #808080 

.btnDTD  border-left 1 solid #808080 border-right 1 solid #ffffff

border-top 1 solid #808080 border-bottom 1 solid #ffffff 

td  font-family 宋體 font-size 9pt 

--></style>

<script language=″JavaScript″><--

//判斷哪個按鈕被按下的全局變量

var intBlnClk=0

//鼠標經過、離開、點擊更改單元格CSS樣式的函數

function mOvrOutobjSrc

var argvargcblnActivestrColorstrBgColorstrClassstrClassDstrCursor

argv=mOvrOut.argumentsargc=argv.length

/默認情況下不將當前對象置為“激活”/

blnActive=argc>1﹖evalargv[1]false

/默認鼠標經過當前對象的樣式為“凸出的按鈕形”/

strClass=argc>2 && argv[2]=′′﹖argv[2]′btnTD′

/默認鼠標點擊的時候當前對象為“凹下的按鈕形”/

strClassD=argc>3 && argv[3]=′′﹖argv[3]′btnDTD′

/將當前對象激活時候的前景色為白色、背景色為藍色、鼠標樣式為手形/

strColor=′#ffffff′strBgColor=′#000080′strCursor=′hand′

/IE4及其更高版本才支持這些JavaScript對CSS樣式的動態改變/

ifdocument.all

//將當前對象的鼠標樣式置為參數傳遞值

objSrc.style.cursor=strCursor

//如果是鼠標進入當前對象范圍

ifobjSrc.containsevent.fromElement

/設置為活動樣式/

ifblnActive objSrc.bgColor=strBgColorobjSrc.style.color=strColor 

/當前對象不需要置為活動樣式的時候,如果本來的樣式是“凸出的按鈕形”則置為“凹下的按鈕形”,反之亦然/

else objSrc.className=intBlnClk=0﹖strClassDstrClass 

//鼠標離開當前對象區域

else ifobjSrc.containsevent.toElement

//將這些樣式置為默認值

objSrc.bgColor=′′objSrc.style.color=′′objSrc.className=′′ 



/ 顯示/隱藏層的通用函數。用objNS、objIE、strStu作為參數,其中objNS和objIE分別是Netscape和IE的“層”對象,strStu為層的狀態。因為篇幅所限,請查看本文尾部說明。 /

function shoHidLayers

/ 調用上面的函數,顯示/隱藏參數傳遞的層,這樣是為了簡化代碼。這里不給出詳細函數。/

function showLayerintCurrent

//--></script></head>

<body onMouseDown=″ifwindow.event.srcElement.style.color==′′ showLayer1′hide′″>

<-- 以上body部分的作用是當鼠標沒有按下任何按鈕的時候隱藏所有應該隱藏的“菜單”。以下是兩個用CSS布局定義的層,名為“menu”的層的初始狀態為:在屏幕上的絕對位置為(1212),可視,層z-index屬性為100;“menu1”為不可視。 -->

<div id=″menu″ style=″positionabsolutevisibility visibleleft12pxtop12px z-index 100″><table border=″1″ cellspacing=″0″ cellpadding=″2″ bgcolor=″#c0c0c0″ bordercolor=″#c0c0c0″>

<tr><td onMouseOver=″mOvrOutthis″ onMouseOut=″mOvrOutthis″ onClick=″mOvrOutthisfalse′btnDTD′showLayer1″>天極網</td></tr>

</table></div>

<div id=″menu1″ style=″positionabsolutevisibility hiddenleft11pxtop34px z-index 1″><table border=″0″ cellpadding=″2″ cellspacing=″0″ bgcolor=″#c0c0c0″ class=″btnTD″>

<tr><td onMouseOver=″mOvrOutthistrue″ onMouseOut=″mOvrOutthis″ width=″100%″nowrap onClick=″window.location=′http//www.pcwclub.com/′showLayer1′hide′″>電腦報讀者俱樂部</td></tr>

</table></div>

因為篇幅所限,一些函數不能詳細給出及說明,如果需要完整代碼請訪問以下鏈接:http//ctsight.topcool.net/documents/menu.html。

大多數人在上網的時候,都會瀏覽網頁提供給我們的信息。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

亚洲嫩草影院久久精品