webForumDet fria alternativet

Position av DIV:ar med Javascript

2 svar · 262 visningar · startad av dap

dapMedlem sedan dec. 1999153 inlägg
#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?

pimpNMedlem sedan okt. 200586 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

dapMedlem sedan dec. 1999153 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;
}
Genererad på 370 ms · cache AV · v20260730165559-full.f96bc7eb