Старый заголовок: Включенный PHP не работает с JQuery и IE в функции, как ожидалось
У меня есть эти две функции:
Первая:
/* dynamic menue */
$("#wrapper div").not(":first").hide();
$("#nav p").click(function () {
$('#wrapper div').eq($(this).index()).show().siblings().hide();
});
Вторая:
var menue = function (menue) {
if ($(window).width() < 680) {
$("#nav").hide();
$("#wrapper div").show();
} else {
$("#nav").show();
$("#wrapper div").not(":first").hide();
}
};
$(document).ready(menue);
$(window).resize(menue);
Первая функция работает хорошо, а вторая гарантирует, что весь контент отображается без меню, если размер окна равенза 680px в противном случае он покажет нормальное состояние.Все отлично работает во всех браузерах.
Я создал скрипку для визуализации: http://jsfiddle.net/TFeWY/
Однако в IE это не работает так, как ожидается:Содержимое div генерируется с помощью php.В этом состоянии я вижу только первый div в IE и не могу переключиться на другой, но изменение размера работает хорошо.Однако, если я изменю содержание php с помощью html, все снова будет работать правильно.Еще интереснее: если я оставлю php нетронутым и просто удалим оператор else, он также будет работать.
Пока я не мог понять, погода это php контент (что я не думаю) или hide () в контексте содержимого php.
Что-то не так в функции для IE?(Проверено в IE8)
Редактировать:
Если я удаляю $ (окно) .resize (меню);это тоже работает.Так что, должно быть, что-то не так с самой функцией?
Я обнаружил, что функция window.resize всегда запускается в IE 8, поэтому я не вижу другие элементы div.
Как я могу что-то с этим сделать?