---
title: "'id' är null eller inte ett objekt"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/132438-id-är-null-eller-inte-ett-objekt"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "jockooono"
published: "2005-08-08T13:55:14.000Z"
updated: "2005-08-12T22:39:40.000Z"
replies: 4
views: 479
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/132438-id-är-null-eller-inte-ett-objekt"
---

# 'id' är null eller inte ett objekt

## #1 — jockooono, 2005-08-08T13:55Z

Är inte världsmästare på javascript, men jag har ett script som öppnar en bild i ett nytt fönster och sätter fönsterstorleken efter bilden. Detta script fungerar fint på en hemsida, 
men när jag kopierar över den exakta koden till en annan hemsida fungear det inte länge. Får felmeddelandet:
'id' är null eller inte ett objekt

Fattar ingenting, såhär ser koden ut:

```
<script type="text/javascript"> 
function bild(filename,winTitle) 
{ 
var myImage = new Image(); 
myImage.src=filename; 
properties='height=0,width=0'; 
var imgWindow = window.open('','','egenskaper'); 
html = '<html>'; 
html += '<head>'; 
html += '<title>'+winTitle+'</title>'; 
html += '<style type=text/css> body {overflow:hidden;} </style>'; 
html += '</head>'; 
html += '<body onBlur="window.close()" topmargin="0" leftmargin="0" >'; 
html += '<img src="'+myImage.src+'" onLoad="resizeTo (document.bild.width+10,document.bild.height+35); moveTo(300,150);" name="bild" onblur="window.close()" onClick="window.close()">'; 
html += '</body>'; 
html += '</html>'; 
imgWindow.document.write(html); 
} 
</script>

<a href="javascript:bild('bilder/test.gif','Testbild');"><img src="bilder/testbild.gif" width="25" height="25""></a>
```

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

## #2 — Peter S, 2005-08-08T14:05Z

Det där skriptet är definitivt inte det bästa. Jag föreslår att du istället tar en titt på [Jojoxx varianter](http://www.jojoxx.net/jscript/archive/#cat10).

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

## #3 — Web-Tor, 2005-08-08T14:05Z

Eftersom du inte har någon variabel som heter "id" i koden du postat här är det troligtvis någon annan javascript-kod som genererar felet. Har du mer kod på sidan eller kanske en länk till sidan?

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

## #4 — jockooono, 2005-08-08T14:14Z

Stämmer, det är visst mitt menyscript som felar. Men jag får inget felmeddelande innan jag lägger in det nya javascriptet. Här är menyscriptet, fattar inte jättemycket av det...

```
function menyInit(menuId, multiMode){
	if(!document.styleSheets || document.styleSheets.length < 1){
		var y = document.createElement("STYLE");
		y.type = "text/css";
		document.getElementsByTagName("HEAD")[0].appendChild(y);
	}

	var s = document.styleSheets[0];
	if(s.addRule)
		s.addRule("#" + menuId + " ul", "display: none", s.length);
	else if(s.insertRule)
		s.insertRule("#" + menuId + " ul {display: none }", s.length);
	else
		return;

	var m = (typeof(multiMode) == "undefined") ? true : Boolean(multiMode);
	var hx, j, c, i = 7;
	while(i-->1){
		hx = document.getElementById(menuId).getElementsByTagName("h" + i);
		j = hx.length;
		while(j-->0){
			c = hx[j].nextSibling;
			if(c.nodeName != "UL")
				c = c.nextSibling;
			c.id = menuId + i + j;
			hx[j].onclick = new Function("switchState('" + c.id + "', " + m + ")");
		}
	}

	var ul = document.getElementById(menuId).getElementsByTagName("ul");
	var x = ul.length;
	while(x-->0)
		if(getCookie(ul[x].id) && getCookie(ul[x].id) == "1")
			open(ul[x], true);
}

function open(obj, m){
	if(!m){
		var s = obj.id.substr(0,obj.id.length-1);
		var ul = document.getElementsByTagName("ul");
		for(i = 0; i < ul.length; i++)
			if(ul[i].id.indexOf(s)==0)
				close(ul[i]);
	}
	obj.style.display = "block";
	setCookie(obj.id, 1);
}

function close(obj){
	obj.style.display = "none";
	var s = obj.getElementsByTagName("ul");
	var i = s.length;
	while(i-->0){
		close(s[i]);
	}
	setCookie(obj.id, 0);
}

function switchState(objId, m){
	var obj = document.getElementById(objId);
	if(obj.style.display == "block")
		close(obj);
	else
		open(obj, m);
}

function setCookie(cookieName, cookieValue){
	document.cookie = escape(cookieName) + "=" + escape(cookieValue) + ";";
}

function getCookie(menuId){
	var re = new RegExp(escape(menuId) + "=([01])");
	re.exec(document.cookie);
	return (RegExp.$1) ? RegExp.$1 : false;
}

window.onload = function(){
	//       (String) menuid, (Boolean) allow more than one menu open (defaults to true)
	menyInit("mainmenu", false);
}
```

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

## #5 — Guffa, 2005-08-12T22:39Z

Menyscriptet har en funktion som heter open, vilket inte är så lyckat eftersom den då ersätter window.open.

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/132438-id-är-null-eller-inte-ett-objekt
