IE не загружает CSS для элементов .load () и JS не работает - PullRequest
1 голос
/ 07 сентября 2011

Я загружаю свой контент с помощью .load () с помощью этой функции:

$(document).ready(function(){
    $("nav a").click(function () {  
    $("#main-content").load($(this).attr("href") + " #content > *");
    return false;
   });
});

index.php содержит стиль и сценарии.

Загруженный контент просто содержит контент в div без заголовка, тела или стилей.

Проблемы:

- IE8 не загружает стили, и эта функция не работает:

$(document).ready(function() {

   if ($(window).width() < 630) {
        $('aside').each(
            function(){
                $(this).parents('article').find('h2').after(this);
                    }
        );  
        }

   if ($(window).width() > 630) {
        $('aside').each(
            function(){
                $(this).parents('section').after(this);
                    }
        );  
        }
});


$(window).bind('resize', function(){

   if ($(window).width() < 630) {
        $('aside').each(
            function(){
                $(this).parents('article').find('h2').after(this);
                    }
        );  
        }

   if ($(window).width() > 630) {
        $('aside').each(
            function(){
                $(this).parents('section').after(this);
                    }
        );  
        }

}); 

Я уже пытался исправить это, как и другие сценарии:

$(document).ajaxComplete(function(){ });

.. но это не сработало.

Любая помощь очень ценится.

Ответы [ 3 ]

0 голосов
/ 07 сентября 2011

Является ли aside классом?

Тогда вам придется использовать
$('.aside').each( вместо
$('aside').each(.

То же самое относится к article и section.

0 голосов
/ 09 сентября 2011

Я понял проблему: это из-за элементов HTML5, которые я использую на странице. С HTML5shiv нет проблем, чтобы заставить их работать на странице в целом, но IE не будет ловить их на загруженном контенте через .load ().

Вот тема, которая уже идет об этом.

Как "включить" элементы HTML5 в IE 8, которые были вставлены вызовом AJAX?

Иннершив уже решение:

http://css -tricks.com / 6869-html5-innershiv /

РЕДАКТИРОВАТЬ: Но все еще проблема с именованными функциями.

0 голосов
/ 07 сентября 2011

Загрузите CSS явно, используя <link>, и используйте $.getScript(), чтобы загрузить и выполнить файл javaScript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...