Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   getElementsByTagName и цикл for (https://javascript.ru/forum/events/11111-getelementsbytagname-i-cikl.html)

KOLANICH 07.08.2010 14:27

getElementsByTagName и цикл for
 
var obj=[];
obj["location"]=window.location.href;

function dumpEls(name,arr,rel){
	obj[name]=[];
	console.log(name,arr,rel,arr.length);
	for(var i=0;i<arr.length;i++){
		console.log(arr[i],arr[i].src,i);
		if(arr[i].src){
			console.log(name)
			obj[name][arr[i].src]=arr[i].innerHTML;
			console.log(arr[i]);
		}
		if(rel&&arr[i].rel==rel&&arr[i].href)obj[name][arr[i].href]=arr[i].innerHTML;
	}
	console.log(arr);
	
}

function dumpPage(frame){
	var page=document;//потом реализую с фреймами
	console.log(page.documentElement.innerHTML);
	//console.log(document.innerHTML);
	dumpEls("scripts",document.getElementsByTagName("SCRIPT"));
	dumpEls("css",page.getElementsByTagName("LINK"),"stylesheet");
}

dumpPage();


запускаю через скрипт greasemonkey
и проверяю допустим на ya.ru
Код:

scripts [script, script mail.js?yaru=y, script] undefined 3

в развёрнутом виде выглядит так:
scripts [script, script mail.js?yaru=y, script]
               
 
       
0
        script
 
       
1
        script mail.js?yaru=y
 
       
2
        script tsuggest-1.9.js
 
       
3
        script
 
       
length
        4
 
       
item
        item()
 
       
namedItem
        namedItem()
undefined 3


или что это такое и как с этим справиться

Kolyaj 09.08.2010 09:07

И что не так?

Цитата:

Сообщение от KOLANICH
var obj=[];

И зачем тут массив?

KOLANICH 09.08.2010 14:26

забей на тот массив
он написан просто для полноты картины

что не так - длина массива arr то 3 то 4
Цитата:

console.log(name,arr,rel,arr.length);
Цитата:

scripts [script, script mail.js?yaru=y, script] undefined 3
Цитата:

в развёрнутом виде выглядит так:
scripts [script, script mail.js?yaru=y, script]



0
script


1
script mail.js?yaru=y


2
script tsuggest-1.9.js


3
script


length
4


Kolyaj 09.08.2010 15:57

Цитата:

Сообщение от KOLANICH
что не так - длина массива arr то 3 то 4

Ну значит их то 3 то 4. И не массив это.

KOLANICH 09.08.2010 16:04

в том то и дело что это один и тот же массив
элементы пропадают не понятно почему

Gvozd 09.08.2010 16:55

Цитата:

Сообщение от KOLANICH
в том то и дело что это один и тот же массив

Это не массив

KOLANICH 09.08.2010 18:00

ладно - объект


Часовой пояс GMT +3, время: 13:52.