---
title: "Skicka variabel"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/50040-skicka-variabel"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "mikkeX"
published: "2002-08-11T10:37:23.000Z"
updated: "2002-08-11T10:53:47.000Z"
replies: 2
views: 224
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/50040-skicka-variabel"
---

# Skicka variabel

## #1 — mikkeX, 2002-08-11T10:37Z

HAr stirrat mig blind på ett problem och jag får det inte att funka - en funktion ska utföras när en viss tid har passerat, och den funktionen ska skicka en variabel till den andra:

\<SCRIPT LANGUAGE="JavaScript"\>
var tidtagare; //sätter variabeln tidtagare
var tid = 1000; //tid mäts i milliskeunder - 1000 ms är lika med en sekund
ie = (document.all) ? true : false;
nav4 = (document.layers) ? true : false;
nav6 = (!document.all && document.getElementById) ? true : false;

	function startaTidtagare(lager){
	tidtagare = setTimeout("dolj(lager)",tid);
	}
	function dolj(lager){
	if (nav4) {
	document.layers\[lager\].visibility = 'hide';
	}
	if (ie) {
	document.all\[lager\].style.visibility = 'hidden';
	}
	else if (nav6){
	document.getElementById(lager).style.visibility = 'hidden';
	}
}

\</SCRIPT\>

Så här ser det ut i Body:

\<div id="menu" class="menu" style="width: 100px;height:30px;background-color:red;text-align:center;cursor:hand" onmouseout="startaTidtagare('lager2')"\>ett test\</div\>
\<div id="lager2" class="lager2" style="position:absolute; top: 50px; left: 20px; background-color: black; color: white"\>text\</div\>

Varför fungerar det inte?

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

## #2 — Jojoxx, 2002-08-11T10:44Z

En klassiker i repris :)

```
tidtagare = setTimeout("dolj(lager)",tid);
```

Det som sker här är att uttrycket "dolj(lager)" sparas för exekvering om *tid* millisekuner. Efter x antal millisekunder kommer då kodsnutten att exekvera;

dolj(lager)

... men då finns ju inte variabeln *lager* definierad. Den var ju bara ett argument till funktionen startaTidtagare() och finns inte längre kvar. Det du vill är alltså att ha **värdet** från variabeln lager, alltså;

```
tidtagare = setTimeout("dolj('"+lager+"')",tid);
```

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

## #3 — mikkeX, 2002-08-11T10:53Z

tack.

Nu hajjar jag.

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/50040-skicka-variabel
