javascript+css 標簽顯示方式的思考收藏

星期天看了很多國外的圖書出版商的網站!發現Sams的標簽顯示方式的實踐思路不錯!標簽顯示的實踐方式一般都要用到:javascript,來動態改變div的顯示和隱藏.來看看人家寫的JS代碼吧:

<script type="text/javascript">

//<![CDATA[

//標簽的數組,如果讓我寫,我想不到會用這個保存

var tabArray = new Array();

//默認顯示哪個標簽

function showDefaultTab(){

//show 'Description' tab by default, else show first

if(!showTab('item1')){

displayToggle(tabArray[0]+"_container",true,'container on');

document.getElementById(tabArray[0]).className = 'selected';

}

}

//改變內容盒的隱顯,並重繪顯示樣式:感覺有點像配適器模式

function showTab(tabID){

var found = false;

for(var i=0; i < tabArray.length; i++){

if(tabArray[i] != tabID){

displayToggle(tabArray[i]+"_container",false, 'container');

document.getElementById(tabArray[i]).className = '';

}else{

displayToggle(tabArray[i]+"_container",true,'container on');

document.getElementById(tabArray[i]).className = 'selected';

found = true;

}

}

return found;

}

//showtab函數會調用這個函數來隱顯內容盒

function displayToggle(id, show, newClass){

var obj = document.getElementById(id);

if(obj != null){

if(show){

obj.style.visibility="visible";

obj.style.display="block";

}else{

obj.style.visibility="hidden";

obj.style.display="none";

}

if(newClass != null)

obj.className = newClass;

}

}

//]]>

</script>

看看HTML的代碼吧!相信大家都猜了個大概:

<div id="sitepage">

<div id="productBSS" class="tabwidget">

<ul class="tabs">

<li id="item1">

<a id="info3" href="#info3" onclick="showTab('item1'); return false;">Description</a>

</li>

<script language="JavaScript">

tabArray.push('item1');

</script>

<li id="item2">

<a id="info8" href="#info8" onclick="showTab('item2'); return false;">Sample Content</a>

</li>

<script language="JavaScript">

tabArray.push('item2');

</script>

</ul>

</div>

<div id="bssContent">

<div id="item1_container">

<!--detail content-->

</div>

<div id="item2_container">

<!--detail content-->

</div>

</div>

<script language="JavaScript">

showDefaultTab();

</script>

</div>

最後是CSS的樣式定義:

<style type="text/css">

<!--

body {margin:150px 0 0 0;font-size:0.8em;font-family:"Lucida Grande", Arial, Helvetica, sans-serif;}

div#sitepage{ margin:0 0 0 184px; padding:0; width:400px;height:auto;}

div#productBSS { clear:both; }

div#bssContent { margin:-1px 0 0 0; padding:1em; border-right:1px solid #C7C8CA; border-left:1px solid #C7C8CA; border-bottom:1px solid #C7C8CA; border-top:1px solid #C7C8CA; }

/* - Tab Widget (blog sidebar) - */

div.tabwidget { border-left: 1px solid #C7C8CA; position: relative; }

/* tab control */

div.tabwidget ul.tabs { list-style: none; margin: 0; padding: 0 0 1px 0; height: 2em; border-bottom: 1px solid #C7C8CA; }

div.tabwidget ul.tabs li { display: block; float: left; background-color:#EEE; border: 1px solid #C7C8CA; border-width: 1px 1px 1px 0; padding: 0 1em; line-height: 2em; margin: 0; }

div.tabwidget ul.tabs li.selected { background-color: #FFF; border-bottom: 1px solid #FFF; }

/* layer control */

div.tabwidget div.container { display: none; clear: both; border: 1px solid #C7C8CA; border-width: 0 1px 1px 0; position: relative; }

div.tabwidget div.on { display: block; }

/* Content control */

:link,:visited { text-decoration:none; }

a:link { color:#004F7F; }

a:visited { color:#2E87B2; }

a:hover, a:active { color:#004F7F; text-decoration:underline; }

-->

</style>

最值的學習的是:javascript數組在這過程的應用!有人會說!硬編碼不是更好麽!不就少了至少一個函數和兩個push操作.這種表現形式是死的!但要靈活運用人家寫代碼的思維!如果你只學習人家的表面形式. 哪沒什麽好說的!

實用和收藏價值使實木家具走俏 消費者要冷思考 資訊_居家裝飾
  近年來家具流行實木熱、紅木熱,實木、紅木家具相比板材、人造綜合板家具而言,顯得價格昂貴、工藝精良,目前此類專賣店或專賣區在梅城越開越多。就在實木(包括紅木家具)“大行其道”的同時,國內不少...查看完整版>>實用和收藏價值使實木家具走俏 消費者要冷思考 資訊_居家裝飾
 
網站設計的思考(收藏)
網站設計的思考1、定位你的網站主題和名稱2、定位你的網站CI形象3、確定網站的欄目和版塊4、確定網站的目錄結構和鏈接結構5、確定網站的整體風格和創意設計6、首頁的設計7、版面布局的原理8、網頁色彩搭配的原理9、字...查看完整版>>網站設計的思考(收藏)
 
實踐存在論的美學思考方式/實踐存在論美學叢書(實踐存在論美學叢書)|報價¥29.80|圖書,其他,劉澤民
目錄:圖書,其他,品牌:劉澤民基本信息·ISBN:9787811370539·版次:1·裝幀:其他·叢書名:實踐存在論美學叢書...查看完整版>>實踐存在論的美學思考方式/實踐存在論美學叢書(實踐存在論美學叢書)|報價¥29.80|圖書,其他,劉澤民
 
蘇格拉底這樣思考--通向幸福的16種方式|報價¥17.30|圖書,哲學與宗教,哲學,西方哲學,古希臘、古羅馬哲學,王麒
目錄:圖書,哲學與宗教,哲學,西方哲學,古希臘、古羅馬哲學,品牌:王麒基本信息·出版社:中國國際廣播出版社·ISBN:7507825078·條碼:9787507825077·版次:1·裝幀:平裝內容簡介蘇格拉底長得奇醜無比:臉面扁平,...查看完整版>>蘇格拉底這樣思考--通向幸福的16種方式|報價¥17.30|圖書,哲學與宗教,哲學,西方哲學,古希臘、古羅馬哲學,王麒
 
關于電影網站推廣方式的思考
  這兩天一直都在思考怎樣推廣我的天天免費電影www.365dianying.com,網上也有很多相關資料,現在我把我自己理解的和正在使用的方法寫出來,希望大家給評說評說。  一、網站的定位。不管你是想做垃圾站還是做正軌...查看完整版>>關于電影網站推廣方式的思考
 
[技術討論]規範與否,還要看適合與否——思考方式決定做事方式
2005-12-10 00:23:04 No-Way|老狼你好啊 2005-12-10 00:23:22 No-Way|老狼沒想到能在這裏和你交流 2005-12-10 00:24:54 青潤呵呵,不用客氣。 2005-12-10 00:25:18 No-Way|老狼看了你書感覺寫得很有實踐性 2005-1...查看完整版>>[技術討論]規範與否,還要看適合與否——思考方式決定做事方式
 
成功人士的七種精神鍛煉方式 -- 像成功人士那樣思考 (7)
現在就做各個領域收入最高的人們的第七種狀態是行動取向。今天就下決心培養工作的緊迫感。人們認爲超過2%的成年工作者有緊迫感,而正是這很少的一部分人最終被提升爲他們所努力的那個領域的高層人員。今天,每一個人...查看完整版>>成功人士的七種精神鍛煉方式 -- 像成功人士那樣思考 (7)
 
成功人士的七種精神鍛煉方式 -- 像成功人士那樣思考 (6)
決心“活到老學到老”樂觀者的第六種狀態是成長取向。它的根據是:只有你變得更好時,生活才會變得更好。以成長取向的人們獻身于自己和自己的將來。他們渴望學習和實踐新的觀點、見識、方法和策略。他們對...查看完整版>>成功人士的七種精神鍛煉方式 -- 像成功人士那樣思考 (6)
 
成功人士的七種精神鍛煉方式 -- 像成功人士那樣思考 (5)
樂觀和高效工作成果的第五種狀態是解決方案取向。你應該經常思考問題的解決方案。你要考慮可以做什麽,以及怎樣才能解決問題,而不是只關注發生了什麽事、追究誰。不成功的人大多數時候在考慮和談論他們自己的問題。...查看完整版>>成功人士的七種精神鍛煉方式 -- 像成功人士那樣思考 (5)
 
 
回到王朝網路移動版首頁