Javascript
7 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Nevedeli by ste mi niekto poradiř že ako na web urobiř javascritové menu, lebo v tom čo je na jakpsatweb sa moc nevyznám. Díky
-
no spíš bych ti doporučil nedělat javascriptové menu, když to jde krásně pomocí html a css
-
http://css.interval.cz/menu - krásný, jasný příklady css menu
-
Díky, uvidím, len neviem či javascript nie je jednoduchší.
-
pokud myslis ze java je jednodussi tak tady mas kod na jedno takove menu....(je to z nejake stranky s JS ale uz nevim z jake): <HEAD> <TITLE>Dynamic JS Menu 1.5</TITLE> <SCRIPT language=JavaScript1.2> td_1 = "Home" url_1 = "pages.htm" td_2 = "Rádio" td_2 = "First Link" url_2_1 = "pages.htm" td_3 = "Top Picks" td_3_1 = "First Pick" url_3_1 = "pages.htm" td_3_2 = "Second Pick" url_3_2 = "pages.htm" td_3_3 = "Third Pick" url_3_3 = "pages.htm" td_3_4 = "Fourth Pick" url_3_4 = "pages.htm" td_3_5 = "Fifth Pick" url_3_5 = "pages.htm" td_3_6 = "Sixth Pick" url_3_6 = "pages.htm" td_3_7 = "Seventh Pick" url_3_7 = "pages.htm" td_3_8 = "Eighth Pick" url_3_8 = "pages.htm" td_3_9 = "Ninth Pick" url_3_9 = "pages.htm" td_3_10 = "Tenth Pick" url_3_10 = "pages.htm" td_4 = "Website Info" td_4_1 = "About The Site" url_4_1 = "pages.htm" td_4_2 = "Webmasters" url_4_2 = "pages.htm" td_4_3 = "Forum" url_4_3 = "pages.htm" td_4_4 = "Guest book" url_4_4 = "pages.htm" td_5 = "Contact Me" url_5 = "pages.htm" td_6 = "Help" url_6 = "pages.htm" </SCRIPT> <STYLE type=text/css> PRE { COLOR: brown } TABLE.menu { BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-BOTTOM: black 1px solid; BORDER-LEFT: black 1px solid; VISIBILITY: hidden; CURSOR: pointer; POSITION: absolute } #mainmenu { POSITION: static } TABLE.menu TD { COLOR: #000000; /* Must be the same as tdBgColor in MScript.js */ BACKGROUND-COLOR: #bbddff; /* Must be the same as tdBgColor in MScript.js */ BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px; PADDING-RIGHT: 8px; PADDING-LEFT: 8px; PADDING-BOTTOM: 2px; PADDING-TOP: 0px; FONT-SIZE: 8pt; FONT-FAMILY: Arial; WHITE-SPACE: nowrap; } </STYLE> </HEAD> <BODY background="background.gif"> <SCRIPT language=JavaScript1.2> ////////////////////Please leave this notice////////////////////// // // // Dynamic JS Menu 1.0 // // By Pat Libby (Libbypa@maine.rr.com) // // http://dragonsbane1.topcities.com // // It works only with IE5.0(++) and Netscape6.0(++) // // Free to use! // // // ////////////////////Last modified 01-31-2003////////////////////// // Modify following four lines to customize your menu var tdColor="#000000"; // menu item text color var tdBgColor="#BBDDFF"; // menu item background color var hlColor="#000000"; // highlight text color var hlBgColor="#FFFFFF"; // highlight background color // After change, modify same values in your DropDown.css file ////////////////////DO NOT MODIFY BELOW HERE////////////////////// var md=250; var ti=-1; var oTd=new Object; oTd=null; function doMenu(td){ clearTimeout(ti); td.style.backgroundColor=hlBgColor; td.style.color=hlColor; var i; var sT=""; var tda=new Array(); tda=td.id.split("_"); if(oTd!=null){ var tdo=new Array(); tdo=oTd.id.split("_"); for(i=1;i<tdo.length;i++){ sT+="_"+tdo[i]; if(tdo[i]!=tda[i]){ document.getElementById("td"+sT).style.backgroundColor=tdBgColor; document.getElementById("td"+sT).style.color=tdColor; if(document.getElementById("tbl"+sT)!=null) document.getElementById("tbl"+sT).style.visibility="hidden"; } } } oTd=td; sT="tbl"; for(i=1;i<tda.length;i++) sT+="_"+tda[i]; if(document.getElementById(sT)!=null) document.getElementById(sT).style.visibility="visible"; } function clearMenu(){ if(oTd!=null){ var tdo=new Array(); tdo=oTd.id.split("_"); var sT=""; for(var i=1;i<tdo.length;i++){ sT+="_"+tdo[i]; document.getElementById("td"+sT).style.backgroundColor=tdBgColor; document.getElementById("td"+sT).style.color=tdColor; if(document.getElementById("tbl"+sT)!=null) document.getElementById("tbl"+sT).style.visibility="hidden"; } oTd=null; } } function runMenu(strURL){ location.href=strURL; } var tt=""; var sT=""; var pT=new Array(); var tA=new Array(); function getCoord(st){ tA=st.split("_"); if(tA.length>2){ tA=tA.slice(0,-1); tt=tA.join("_"); return (document.getElementById("tbl"+tt).offsetTop+document.getElementById("td"+st).offsetTop+4)+"px;left:"+ (document.getElementById("tbl"+tt).offsetLeft+document.getElementById("td"+st).offsetWidth-2)+"px\">"; } return (document.getElementById("mainmenu").offsetTop+document.getElementById("td"+st).offsetHeight-2)+"px;left:"+ (document.getElementById("mainmenu").offsetLeft+document.getElementById("td"+st).offsetLeft+5)+"px\">"; } var sH="<table class=\"menu\" id=\"mainmenu\" cellspacing=\"0\"><tr>"; var p=0; var j=0; while(eval("typeof(td_"+ ++j +")!=\"undefined\"")){ sH+="<td id=\"td_"+j+"\" onmouseover=\"doMenu(this)\" onmouseout=\"ti=setTimeout('clearMenu()',md)\""; sH+=(eval("typeof(url_"+j+")!=\"undefined\""))?" onclick=\"runMenu('"+eval("url_"+j)+"')\">":">"; sH+=eval("td_"+j)+"</td>"; if (eval("typeof(td_"+j+"_1)!=\"undefined\"")) pT[p++]="_"+j; } sH+="</tr></table>"; document.write(sH); for(var q=0;typeof(pT[q])!="undefined";q++){ sT=pT[q]; sH=""; j=0; sH+="<table class=\"menu\" id=\"tbl"+sT+"\" cellspacing=\"0\" style=\"top:"+getCoord(sT); while (eval("typeof(td"+sT+"_"+ ++j +")!=\"undefined\"")){ sH+="<tr><td id=\"td"+sT+"_"+j+"\" onmouseover=\"doMenu(this)\" onmouseout=\"ti=setTimeout('clearMenu()',md)\""; sH+=(eval("typeof(url"+sT+"_"+j+")!=\"undefined\""))?" onclick=\"runMenu('"+eval("url"+sT+"_"+j)+"')\">":">"; sH+=eval("td"+sT+"_"+j)+"</td></tr>"; if (eval("typeof(td"+sT+"_"+j+"_1)!=\"undefined\"")) pT[p++]=sT+"_"+j; } sH+="</table>"; document.write(sH); } document.getElementById("mainmenu").style.visibility="visible"; </SCRIPT> </body>
-
To je tedy rada. Zdá se mi jednodušší se to naučit, než tohle tupě použít a pak hledat, proč a co tam nejde. Pokud chceš psát menu, nauč se v CSS absolutní a relativní pozicování, display none a block, visibility hidden a visible a pak jak to přepínat třeba pomocí JS onmouseover. Pokud chceš aby ti něco plavalo s kurzorem myši (kontextové menu), pěkně se potrápíš s objektem event a vlastnostmi offsetX, clientX, scrollLeft, atd. Hlavně s rozdíly mezi IEXP a Mozillou, i mezi režimem strict a compatibile.
-
Zaujímavé, začal som už robiř to css menu, len blbé je to že aby sa mi to zobrazovalo dobre vo firefoxe, to v poho, ale IE má tam vlastnú tabulku, a tá mi blbne, nejde pre IE zadávař veľkosti, roztiahnutie... Najlepšie je to menu čo je na boku, a vysúvajú sa pododkazy, ale to mi zase nepasuje do webu.