---
title: "Lista över bilder på en sida"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/185763-lista-över-bilder-på-en-sida"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Mattias Nordin"
published: "2011-01-14T14:40:51.000Z"
updated: "2011-01-15T12:51:29.000Z"
replies: 7
views: 1238
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/185763-lista-över-bilder-på-en-sida"
---

# Lista över bilder på en sida

## #1 — Mattias Nordin, 2011-01-14T14:40Z

Finns det något sätt att med hjälp av javascript få ut en lista (src) på alla bildobjekt på en sida?

Antar att man kan köra regexp för att hitta alla imagetaggar men det kanske finns en annan metod??? 

 :stud

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

## #2 — voigtann1, 2011-01-14T14:45Z

```
var images = document.getElementsByTagName("img");
for(var i=0,l=images.length;i<l;i++) {
var image = images[i];
// Get src with image.src and do whatever you want
}
```

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

## #3 — Mattias Nordin, 2011-01-14T15:04Z

Det jag experimenterar med är om det är möjligt att hämta någon annans sida genom att skicka in en url och sedan presentera enbart bilderna på den sidan på ett intressant sätt. Ungefär som google gör med sin bildsökning. 

Dilemmat är ju således att jag inte har tillgång till källkoden på sidan och kan därmed inte namnge bilderna på ett speciellt sätt.

hmmm...

(coolt. detta var inlägg 1000 med min nya profil)

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

## #4 — voigtann1, 2011-01-14T15:09Z

Vad menar du med att namnge bilderna på ett speciellt sätt? Javascript kommer bara åt vad som finns på den aktuella sidan, hämta ut alla IMG element och loopar ut dom, om du hämtar bilder från en annan sida (screen scraping) så få du fortfararande ut DOM objekt som du kan hämta.

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

## #5 — Mattias Nordin, 2011-01-15T11:45Z

My bad, läste lite slarvigt. Mycket intressant och jag har delvis fått det att fungera.

```
<div id="divReadyStateOutput" style="border:2px solid green;"> </div>
<div id="divPictureOutputArea" style="border:2px solid yellow;"> </div>

<script>
function funGetXmlHttpObject(getThisPage, myOutputDivId) { 

	var objXmlHttp = null
	
	try{
		objXmlHttp = new XMLHttpRequest();
	}catch(e){
			try{
				objXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e){
				try{
				objXmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
				}catch(e){
					alert("error opening XMLHTTP")
				}            
			}        
		}        
	
	//alert("Open page")
	objXmlHttp.open("GET", getThisPage, true)    
	objXmlHttp.send();

	// Display readystate
	//alert("Readystate = " +objXmlHttp.readyState)	
	objXmlHttp.onreadystatechange=function(){
	document.getElementById("divReadyStateOutput").innerHTML = objXmlHttp.readyState;
  		if (objXmlHttp.readyState==4 && objXmlHttp.status==200){
    	}
  	} 

	//Output the page in div...
	//document.getElementById(myOutputDivId).innerHTML = objXmlHttp.responseText	

	// Lets find the images...
	//alert("Find images")
	var varHtml = "";
	var varPageString = objXmlHttp.responseText;
	var arrImages = document.getElementsByTagName("img");

	//alert("Found images = " +arrImages.length);
	for (i=0; i<arrImages.length; i++){
  	
		varHtml = varHtml + arrImages[i].src +"<br/>"
  
  	}
	
	// Display image src in output div...
	document.getElementById(myOutputDivId).innerHTML = varHtml;

} 
</script>
```

```
<script>
//sida A fungerar
funGetXmlHttpObject("http://filmsnutt.se/", "divPictureOutputArea")

//sida B fungerar EJ
funGetXmlHttpObject("http://mattiasnordin.net/", "divPictureOutputArea")
</script>
```

Jag får Access denied fel. Vad kan det bero på?

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

## #6 — voigtann1, 2011-01-15T11:52Z

AJAX fungera endast på din egna domän.

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

## #7 — Mattias Nordin, 2011-01-15T12:49Z

Det var ju en bummer. 

Men jag såg att det finns ServerXMLHTTP också. Får min webserver hämta en sida från internet och går det sedan att applicera javascriptet på denna?

Typ:

```
<% call subGetPage("http://mattiasnordin.net") %>

<% sub subGetPage(strDocURL)

	Set objXmlHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP") 

	'Get the image
	objXmlHTTP.Open "GET", strDocURL, False
	objXmlHTTP.Send ()

	Response.Write(objXmlHTTP.responseText) %>

	<div id="divReadyStateOutput" style="border:2px solid green;"> </div>
	<div id="divPictureOutputArea" style="border:2px solid yellow;"> </div>

<script>
	// Lets find the images...
	//alert("Find images")
	var varHtml = "";
	var arrImages = document.getElementsByTagName("img");

	alert("Found images = " +arrImages.length);
	for (i=0; i<arrImages.length; i++){
  	
		varHtml = varHtml + arrImages[i].src +"<br/>"
  
  	}
	
	// Display image src in output div...
	document.getElementById("divPictureOutputArea").innerHTML = varHtml;

} 
</script>
```

?

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

## #8 — voigtann1, 2011-01-15T12:51Z

Ja, därav "ScreenScraping", bör bara vara att köra, dock så bli HTML strukturen fel om du har anropat fler än en sida och få flera \<html\>-element, doctypes osv.

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/185763-lista-över-bilder-på-en-sida
