JavaScript不能像PHP一樣在函數參數中直接設置默認值,但是JavaScript有一個(gè)arguments可以使用,這就可以為函數參數設置默認值了,如:
function tabswitch(obj){
var ishover=arguments[1]?arguments[1]:true;//ishover默認值
var isclick=arguments[2]?arguments[2]:false;//isclick默認值
$('#'+obj+' div:eq(0) ul li').css('float','left').css('margin','0px 5px').css('list-style-type','none');//設置第一個(gè)div的li的float樣式為left,及其它樣式
$('#'+obj+' div:eq(1)').css('clear','both');//將第二個(gè)div進(jìn)行css的float屬性清除
$('#'+obj+' div:eq(1) ul li:not(:first)').css('display','none');//將菜單對應內容除第一項其它默認隱藏
$('#'+obj+' div:eq(1) ul li').css('list-style-type','none');//第二個(gè)div的li樣式設置
if(ishover==true){
$('#'+obj+' div:eq(0) ul li').hover(function(){//焦點(diǎn)切換
//alert(($(this).index()));
$('#'+obj+' div:eq(1) ul li:eq('+$(this).index()+')').css('display','block');//設置對應內容顯示
$('#'+obj+' div:eq(1) ul li:not(:eq('+$(this).index()+'))').css('display','none');//設置其它內容隱藏
});
}
if(isclick==true){
$('#'+obj+' div:eq(0) ul li').click(function(){//焦點(diǎn)切換
//alert(($(this).index()));
$('#'+obj+' div:eq(1) ul li:eq('+$(this).index()+')').css('display','block');//設置對應內容顯示
$('#'+obj+' div:eq(1) ul li:not(:eq('+$(this).index()+'))').css('display','none');//設置其它內容隱藏
});
}
}
$(document).ready(function(){
tabswitch('switchdiv',true,true);
});
以上是一段自己寫(xiě)的菜單切換的功能,規則是:只要div結構為如下便可以:
<div id='divid'>
<div><ul><li>AAAA</li><li>BBBB</li></ul></div>
<div><ul><li>AAAA Content</li><li>BBBB Content</li></ul></div>
</div>
調用時(shí)只需傳入最外層div的id便可。