Вопрос

Я работаю над сценарием jQuery над http://www.qxl.dk/ и я не могу заставить IE7 (или, точнее, IE8 в режиме совместимости с IE7) загрузить мой контент.

Поле боковой панели справа под названием «QXL Aktuelt» загружает HTML-содержимое из внешнего файла с помощью Ajax. load(), затем запускает пользовательское событие jQuery ("aktuelt_loaded"), который запускает скрипт карусели (например, прокручиваемый новый стикер).

Несколько других разделов контента на той же странице загружаются через Ajax и работают нормально, поэтому мне интересно, что происходит не так.В Firefox 3.6 и IE8 все работает как положено, но не в режиме совместимости IE8.

Сценарий, загружающий содержимое Ajax (встроен на странице):

<div id="qxlaktueltHolder"></div>
<script type="text/javascript">
    $("#qxlaktueltHolder").load("/contents/dk/modul/qxlaktuelt/qxlaktuelt.htm", function() {
        $("#qxlaktueltHolder").trigger("qxlaktuelt_loaded", []);
    });
</script>
<script type='text/javascript' src='http://www.qxl.dk/contents/dk/js/jcarousellite_1.0.1.min.js'></script>
<script type='text/javascript' src='http://www.qxl.dk/contents/dk/js/qxlaktuelt_liveload.js'></script>

Внешний скрипт, реагирующий на событие, находится в следующем файле:

http://www.qxl.dk/contents/dk/js/qxlaktuelt_liveload.js

Все идеи очень приветствуются.

Это было полезно?

Решение

РЕДАКТИРОВАТЬ:

Похоже, ваш контент загружается.Кажется, у вас проблема с отображением CSS.Используя инструменты разработчика IE, я нашел href файла a который был правильно загружен в Safari

http://www.123hjemmeside.dk/pages/receive.aspx?target=wl&partnerkey=dkqxl:Hobby_aktuelt_1

и обнаружил, что он был на странице вместе со всем остальным содержимым.

ОБНОВЛЯТЬ:

Проблема в твоем #newsticker элемент.Оно и все его li элементы имеют свойства высоты и/или ширины, установленные на 0.

Итак, какой бы код ни отвечал за изменение размера/отображение #newsticker и его содержание, похоже, является виновником.


Это предположение, но этот скрипт qxlaktuelt_liveload.js загружается после этого:

<script type="text/javascript">
    $("#qxlaktueltHolder").load("/contents/dk/modul/qxlaktuelt/qxlaktuelt.htm", function() {
        $("#qxlaktueltHolder").trigger("qxlaktuelt_loaded", []);
    });
</script>

Поэтому в зависимости от того, как долго load() занимает, скрипт может быть загружен, а может и не загрузиться.

Пытаться:

<script type='text/javascript' src='http://www.qxl.dk/contents/dk/js/jcarousellite_1.0.1.min.js'></script>
<script type='text/javascript' src='http://www.qxl.dk/contents/dk/js/qxlaktuelt_liveload.js'></script>
<script type="text/javascript">
    $("#qxlaktueltHolder").load("/contents/dk/modul/qxlaktuelt/qxlaktuelt.htm", function() {
        $("#qxlaktueltHolder").trigger("qxlaktuelt_loaded", []);
    });
</script>

Другие советы

Удалите всю консоль в вашем коде JavaScript. Почему-то разрыв IE с этим.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top