Přepis JS menu pro vertikální použití – JavaScript, AJAX, jQuery – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Přepis JS menu pro vertikální použití – JavaScript, AJAX, jQuery – Fórum – Programujte.comPřepis JS menu pro vertikální použití – JavaScript, AJAX, jQuery – Fórum – Programujte.com

 

albru123
~ Anonymní uživatel
2 příspěvky
31. 3. 2013   #1
-
0
-

Dobrý den, na svém webu mám JavaScriptové menu, které jsem získal na internetu, ale potřeboval bych script přepsat tak aby šel použít i vertikálně. Sám moc zkušeností s JS nemám. Jestli by byl někdo ochotný i přihodit nastavení CSS na kterém by to mělo taky záviset.

 JS:

var menuSlider=function(){
	var m,e,g,s,q,i; e=[]; q=8; i=8;
	return{
		init:function(j,k){
			m=document.getElementById(j); e=m.getElementsByTagName('li');
			var i,l,w,p; i=0; l=e.length;
			for(i;i<l;i++){
				var c,v; c=e[i]; v=c.value; if(v==1){s=c; w=c.offsetWidth; p=c.offsetLeft}
				c.onmouseover=function(){menuSlider.mo(this)}; c.onmouseout=function(){menuSlider.mo(s)};
			}
			g=document.getElementById(k); g.style.width=w+'px'; g.style.left=p+'px';
		},
		mo:function(d){
			clearInterval(m.tm);
			var el,ew; el=parseInt(d.offsetLeft); ew=parseInt(d.offsetWidth);
			m.tm=setInterval(function(){menuSlider.mv(el,ew)},i);
		},
		mv:function(el,ew){
			var l,w; l=parseInt(g.offsetLeft); w=parseInt(g.offsetWidth);
			if(l!=el||w!=ew){
				if(l!=el){var ld,lr,li; ld=(l>el)?-1:1; lr=Math.abs(el-l); li=(lr<q)?ld*lr:ld*q; g.style.left=(l+li)+'px'}
				if(w!=ew){var wd,wr,wi; wd=(w>ew)?-1:1; wr=Math.abs(ew-w); wi=(wr<q)?wd*wr:wd*q; g.style.width=(w+wi)+'px'}
			}else{clearInterval(m.tm)}
}};}();

 CSS které mají spojitost se scriptem:

.menu {font:14px Helvetica, sans-serif; font-weight:bold;position:relative; background:transparent; height:35px;margin:auto;width:100%;text-align:center;}
.menu ul {list-style:none; z-index:10; z-index:100;display:inline-block;padding:0}
.menu li {display:inline}
.menu a, .menu a:active, .menu a:visited {text-decoration:none; color:#A9A582; padding:10px;}
.menu a:hover {color:#8B0B04}
#slide {position:absolute; bottom:0; height:4px; background:#8B0B04; z-index:10}

HTML:  

<div class="menu">
<ul id="menu">
<li value="1"><a href="#">První položka</a></li>
<li><a href="kontakt.htm">Druhá položka</a></li>
</ul>
<div id="slide"><!-- --></div>
</div>

Vypadá to že jsem líný udělat si něco sám, ale já opravdu nevím co v Javascriptu upravit

Nahlásit jako SPAM
IP: 78.102.246.–
null_while
~ Moderátor
+6
Věrný člen
31. 3. 2013   #2
-
0
-
Nahlásit jako SPAM
IP: 213.250.198.–
WEBNIA.cz - tvorba webových stránek
albru123
~ Anonymní uživatel
2 příspěvky
1. 4. 2013   #3
-
0
-

Děkuji, bylo mi to jasné, určitě to nějakou práci dá. Moc vám děkuji za odkazy které jste mi poskytnul, spíše jsem doufal, že stačí přepsat pouze parametry které získávají a počítají ve scriptu šířku a pozici odkazu.

Nahlásit jako SPAM
IP: 46.13.232.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 20 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý