---
title: "meny bytbild script modifierat"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/134924-meny-bytbild-script-modifierat"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "tlee"
published: "2005-09-28T10:48:58.000Z"
updated: "2005-09-28T16:33:52.000Z"
replies: 8
views: 374
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/134924-meny-bytbild-script-modifierat"
---

# meny bytbild script modifierat

## #1 — tlee, 2005-09-28T10:48Z

Hej,

hittade ett script här på wf som jag behöver ändra lite på. 

```
<html>
<head>
<script language="javascript" type="text/javascript">

function parseQuery(){
 if (location.search) {
  var params = location.search.substring(1, location.search.length).split('&');
  var result = new Array ();
  for (k in params) {
   queryparts=params[k].split('=');
   eval('result.' + queryparts[0] + ' = "' + queryparts[1] + '"');
  }
  return result;
 }
 return new Array();
}

p = parseQuery();
if (p["activeitem"])
  activeitem = p["activeitem"];
else
  activeitem = "btn0";

</script>

<script>

function gotoPage(frameTop, frameMenu, frameMain, frameBottom)
		{
		  if (frameTop) { parent.frames['top'].location = frameTop; }
		  if (frameMenu) { parent.frames['menu'].location = frameMenu; }
		  if (frameMain) { parent.frames['main'].location = frameMain; }
		  if (frameBottom) { parent.frames['bottom'].location = frameBottom; }

		}

imageList=[];

function loadImage(name, imageOn, imageOut, imageAct){
  imageList[name] = []

  imageList[name].imageon = new Image();
  imageList[name].imageon.src = imageOn;

  imageList[name].imageout = new Image();
  imageList[name].imageout.src = imageOut;

  imageList[name].imageact = new Image();
  imageList[name].imageact.src = imageAct;

  cImg = (name == activeitem) ? imageList[name].imageact.src : imageList[name].imageout.src;

  //document.write ('<a href="?activeitem=' + name + '" onmouseover="hoverImage(\'' + name + '\');" onmouseout="hoverImage(\'\')" ><img border="0" name="' + name + '" src="' + cImg + '" /></a>');
  document.write ('<a href=# OnClick="gotoPage('<a href="?activeitem=' + name + '"', '/_shop/menu.asp','/_shop/main.asp','/_shop/cart_view.asp')" onmouseover="hoverImage(\'' + name + '\');" onmouseout="hoverImage(\'\')" ><img border="0" name="' + name + '" src="' + cImg + '" /></a>');
}

function hoverImage(name){
  for (i in imageList)
    if (i!=activeitem)
    if (i==name)
      document.images[i].src = imageList[i].imageon.src;
    else
      document.images[i].src = imageList[i].imageout.src;
}
</script>

<script>
loadImage("btn0","btn1_on.gif", "btn1_off.gif", "btn1_on.gif");
loadImage("btn1","btn2_on.gif", "btn2_off.gif", "btn2_on.gif");
loadImage("btn2","btn3_on.gif", "btn3_off.gif", "btn3_on.gif");

</script>
</head>

<body style="margin-top:4; margin-left:0" background=/images/top.gif>
```

Jag har lagt in funktionen gotoPage(), raden ovanför anropet är originalraden på hur anropet sker.. jag fattar inte vad som är fel..

Permalänk: https://www.webforum.nu/p/134924

## #2 — Peter S, 2005-09-28T11:35Z

Hej!

Så här kanske:

```
function loadImage(name, imageOn, imageOut, imageAct){
  imageList[name] = {};

  imageList[name].imageon = new Image();
  imageList[name].imageon.src = imageOn;

  imageList[name].imageout = new Image();
  imageList[name].imageout.src = imageOut;

  imageList[name].imageact = new Image();
  imageList[name].imageact.src = imageAct;

  cImg = (name == activeitem) ? imageList[name].imageact.src : imageList[name].imageout.src;

  document.write('<a href="#" onclick="gotoPage(\'?activeitem='+ name +'\', \'/_shop/menu.asp\', \'/_shop/main.asp\', \'/_shop/cart_view.asp\')" onmouseover="hoverImage(\''+ name +'\')" onmouseout="hoverImage(\'\')"><img border="0" name="' + name + '" src="' + cImg + '"></a>');
}
```

Permalänk: https://www.webforum.nu/p/1679030

## #3 — tlee, 2005-09-28T12:43Z

tjena.. kanske kan funka.. jag får dock ett fel på rad 91 och den ser ut såhär

```
loadImage("btn0
","images_menu/btn1_on.gif", "images_menu/btn1_off.gif", "images_menu/btn1_on.gif");
```

anropet ligger innanför en script tag.. så det borde funka..
"Ett objekt förväntas" lyder felmeddelandet

Permalänk: https://www.webforum.nu/p/1679056

## #4 — Peter S, 2005-09-28T12:48Z

Följande kod får jag inga felmeddelanden med:

```
<html>
<head>
<script language="javascript" type="text/javascript">

function parseQuery(){
 if (location.search) {
  var params = location.search.substring(1, location.search.length).split('&');
  var result = new Array ();
  for (k in params) {
   queryparts=params[k].split('=');
   eval('result.' + queryparts[0] + ' = "' + queryparts[1] + '"');
  }
  return result;
 }
 return new Array();
}

p = parseQuery();

if (p["activeitem"])
  activeitem = p["activeitem"];
else
  activeitem = "btn0";

</script>

<script>

function gotoPage(frameTop, frameMenu, frameMain, frameBottom)
		{
		  if (frameTop) { parent.frames['top'].location = frameTop; }
		  if (frameMenu) { parent.frames['menu'].location = frameMenu; }
		  if (frameMain) { parent.frames['main'].location = frameMain; }
		  if (frameBottom) { parent.frames['bottom'].location = frameBottom; }

		}

imageList=[];

function loadImage(name, imageOn, imageOut, imageAct){
  imageList[name] = {};

  imageList[name].imageon = new Image();
  imageList[name].imageon.src = imageOn;

  imageList[name].imageout = new Image();
  imageList[name].imageout.src = imageOut;

  imageList[name].imageact = new Image();
  imageList[name].imageact.src = imageAct;

  cImg = (name == activeitem) ? imageList[name].imageact.src : imageList[name].imageout.src;

  document.write('<a href="gotoPage(\'?activeitem='+ name +'\', \'/_shop/menu.asp\', \'/_shop/main.asp\', \'/_shop/cart_view.asp\')" onmouseover="hoverImage(\''+ name +'\')" onmouseout="hoverImage(\'\')"><img border="0" name="' + name + '" src="' + cImg + '"></a>');
}

function hoverImage(name){
  for (i in imageList)
    if (i!=activeitem)
    if (i==name)
      document.images[i].src = imageList[i].imageon.src;
    else
      document.images[i].src = imageList[i].imageout.src;
}
</script>

<script>
loadImage("btn0","btn1_on.gif", "btn1_off.gif", "btn1_on.gif");
loadImage("btn1","btn2_on.gif", "btn2_off.gif", "btn2_on.gif");
loadImage("btn2","btn3_on.gif", "btn3_off.gif", "btn3_on.gif");

</script>
</head>

<body style="margin-top:4; margin-left:0" background=/images/top.gif>
```

Permalänk: https://www.webforum.nu/p/1679061

## #5 — tlee, 2005-09-28T13:09Z

nej det fungerar.. var jag som hade missat.. problemet är att länkarna inte fungerar.. trycker jag på knappen så laddar han om sidan i den aktuella framen bara.... testa på
<http://www.arlec.com/frame.asp>

Permalänk: https://www.webforum.nu/p/1679071

## #6 — Peter S, 2005-09-28T13:26Z

Problemet är att din toppram heter "top". I JavaScript syftar "top" på det fönster högst upp i fönsterhierarkin. Med andra ord är parent.frames\["top"\] ekvivalent med parent.top, vilket gör att toppramen laddas med menysidan.

Lösningen är alltså att byta namn.  :)

Permalänk: https://www.webforum.nu/p/1679083

## #7 — tlee, 2005-09-28T14:17Z

hehe sedär sedär.. jag tackar och bockar! :)

men det funkar fortfarande inte..det är bättre men det verkar som han inte kör funktionen utan postar submitar hela länken eller nått.. istället för att ladda om en frame laddar den allihopa med olika sidor istället..

återigen <https://www.arlec.com/frame.asp> klicka i menyn för exempel.

Permalänk: https://www.webforum.nu/p/1679106

## #8 — Peter S, 2005-09-28T15:41Z

Jag förstår inte riktigt vad problemet är. Vilken funktion är det som inte körs menar du? gotoPage() är ju definierad så att den laddar nya sidor i samtliga 4 ramar.

Nu visas förresten inte menyn överhuvudtaget, eftersom det fattas ett "\\" före apostrofen efter "menu.asp" i document.write()\-satsen.

Permalänk: https://www.webforum.nu/p/1679141

## #9 — tlee, 2005-09-28T16:33Z

okej.. jag har fixat det nu .. :) du skall ha stort tack!

Permalänk: https://www.webforum.nu/p/1679152

---

Tråden på webben: https://www.webforum.nu/amne/javascript/134924-meny-bytbild-script-modifierat
