Задать вопрос
@vohaha

Как решить проблему с .length после хака getElementsByClassName в ie?

Есть бибилотека parallax.js в которой есть getElementsByClassName. Для работы в IE7> прописал:
function getElementsByClassName(node, classname) {
	var a = [];
	var re = new RegExp('(^| )'+classname+'( |$)');
	var els = node.getElementsByTagName("*");
	for(var i=0,j=els.length; i<j; i++)
		if(re.test(els[i].className))a.push(els[i]);
	return a;
}
var parallaxLayer = getElementsByClassName(document.body,'layer');

Но теперь ошибка во всех браузерах: "Cannot read property 'length' of undefined" (chrome, opera), "Unable to get property 'length' of undefined or null reference" (IE)," this.layers is undefined" (FF).
Возможно ли решить эту проблему?
Здесь небольшой пример кода (комментарии там где заменяется метод getElementsByClassName и там где выдает ошибку с length)
  • Вопрос задан
  • 2449 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
mlnkv
@mlnkv
JavaScript Developer
Интересно, а зачем вам поддержка IE 7?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы