Таким образом, оказалось, что проблема с IE и всем остальным обрабатывает вещи по-разному ... как обычно.
У меня есть функция, которую я использую, чтобы выдавать ошибку, и она рекурсивна по своему дизайну,Я хотел, чтобы ошибка отображалась в основном документе, а не в фрейме (который, к сожалению, широко используется на этом сайте).Суть моей функции заключается в следующем:
myClass.myErrorFunc = function ( msg ) {
if ( parent !== window ) {
parent.myClass.myErrorFunc( msg );
} else {
// display the error
}
}
Это прекрасно работает в Chrome и Firefox.Он повторяет один уровень и выдает ошибку, отображаемую в главном окне, потому что, как только он попадает на верхний уровень, родитель сам становится.Однако, очевидно, в IE родитель окна никогда не является сам по себе.Таким образом, бесконечная рекурсия.
Оставайтесь с нами для решения.
Редактировать: Очевидно, это была проблема с использованием !==
вместо !=
.Когда я переключил его на !=
, во второй раз (так как он запускается с iframe
), window == parent
оценивает значение true, но window === parent
не ...
Что бы я нивозьму ...
Спасибо за вашу помощь, ребята.