webForumDet fria alternativet
Logga in / Bli medlem

Position av DIV:ar med Javascript

JavaScript

2 svar · 262 visningar · startad av dap

Medlem sedan dec. 1999151 inlägg
Trådstart#1

Här är min meny (förenklad):

<div>Adam</div>
<div>Bertil</div>
<div>Ceasar</div>

Utan någon vidare css-styling så ser den ut så här:

Adam
Bertil
Ceasar

Om jag sätter undermenyns position med detta scriptet:

function findPosX(obj)
{
	var curleft = 0;
	if(obj.offsetParent)
		while(1) 
		{
		curleft += obj.offsetLeft;
		if(!obj.offsetParent)
			break;
		obj = obj.offsetParent;
		}
	else if(obj.x)
		curleft += obj.x;
	return curleft;
}

så fungerar det (Även om jag får justera curleft något för att det skall se snyggt ut). IE och FF renderar lika.

Men min meny skall se ut så här:

Adam Bertil Ceasar

Och det kan man ju åstadkomma med lite css-styling, men då fungerar inte scriptet i IE. Det fungerar inte heller om man åstadkommer menyn mha tabeller.

Någon som har en lösning eller ett X,Y-script som fungerar både i IE och FF?

Medlem sedan okt. 200589 inlägg
#2

Stop! in the name of loove.. Du håller på med en meny, inte sant?

<ul>
  <li>Adam</li>
  <li>Bertil</li>
  <li>Ceasar</li>
</ul>

Sedan kan du frivilligt lägga till

li {
list-style: none;
}

i din CSS-fil.

// Oliver Olofsson

Medlem sedan dec. 1999151 inlägg
#3

Ja, så kan man göra, men det var inte det jag skulle göra i det här fallet.

Jag löste mitt problem genom att känna av browser och ändra viss kod därefter:

if (browser == "Internet Explorer")
{
	var curtop = -15;
}
	
if (browser == "Firefox")
{
	var curtop = 16;
}
249 ms totalt · 4 externa anrop · v20260731065814-full.c32e866c
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)