Сообщение от B~Vladi
|
Я пробовал так:
var arr = Array.prototype.slice.call(document.getElementsByTagName('*'));
|
Сообщение от B~Vladi
|
Осел такие трюки не понимает.
|
IE9 теперь умеет так делать.
Сообщение от B~Vladi
|
Как его проучить?
|
// Преобразует NodeList в Array
// Реализация только для Standards Compliant Mode
if (!Array.toArray) {
try {
// IE9 и все остальные браузеры поддерживают преобразование NodeList в массив при помощи slice.
Array.prototype.slice.call(document.childNodes); // IE6–8 здесь выбросят исключение.
Array.toArray = function (slice) {
return function (anything) {
return slice.call(anything);
};
}(Array.prototype.slice);
} catch (error) {
Array.toArray = function (anything) {
var length = anything.length, i = -1, array = [];
if (length) {
while (++i < length) {
array[i] = anything[i];
}
}
return array;
};
}
}