[英]Highlighting active menu item in blogger blogspot with javascript
[英]start with active menu item javascript
嗨,我是新手,不確定我是否做對了。
我使用的Javascript將在點擊后裝飾一個活動鏈接。 問題是,如何加載已激活的菜單項之一的頁面?
示例: http : //moschalkx.nl/
JavaScript代碼:
function hlite_menu(obj){
var lnk=document.getElementById('menu').getElementsByTagName('A');
for(var i in lnk){
lnk[i].className=(lnk[i]===obj)?'menu_active':'menu_idle';
}
}
function set_menu(){
var lnk=document.getElementById('menu').getElementsByTagName('A');
for(var i in lnk){
lnk[i].className='menu_idle';
lnk[i].onclick=function(){
hlite_menu(this);
}
}
}
window.onload=set_menu;
CSS:
a.menu_idle {color:#333333; text-decoration:none;}
a.menu_active {color:#333333; text-decoration:underline;}
a:visited {color:#333333; text-decoration:none;}
a:hover {color:#333333; text-decoration:underline;}
您已經有了hlist_menu
函數,該函數可以將特定鏈接設置為活動狀態,所以我只需要從set_menu
函數中調用該鏈接,就應該以哪個鏈接應該處於活動狀態
function set_menu(){
var lnk=document.getElementById('menu').getElementsByTagName('A');
for(var i in lnk){
lnk[i].className='menu_idle';lnk[i].onclick=function({hlite_menu(this);}}
if (lnk[i] /* ??? how do you know whether this is the link to activeate up front? */ ) {
hlist_menu(lnk[i]);
}
}
還有這個
lnk[i].onclick=function({hlite_menu(this);}}
可以簡化為
lnk[i].onclick = hlite_menu;
假設您將其更改為
function hlite_menu(){
var lnk= document.getElementById('menu').getElementsByTagName('A');
for(var i in lnk){
lnk[i].className = (lnk[i] === this) ? 'menu_active':'menu_idle';
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.