Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите найти баг, в 7ИЕ не работает скрипт 
:(
    Опции темы
mexico
Дата 9.4.2010, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 15.5.2009

Репутация: нет
Всего: нет



Есть сайт goautoz.com  см. внизу справа блок "Latest News" там скрипт кторотый скролит новости снизу вверх. 
Но почему то в 7 версии ие скрола нет!!! 
Проверил отдельно скрипт. РАБОТАЕТ. значит проблема не в самом скрипте. Но ошибок браузер тоже не выдает.  smile  
Прям что делать не знаю. 

вот как можно подключить скрипт. 

Код

<div id="scrollingContainer">
             <div id="rssContent">  RSS  </div>
</div>
<script type="text/javascript" src="http://dms.dxloo.com/ajaxscripts/rss.php"></script>


вот сам скрипт (без вставки контента)
Код

    var slideTimeBetweenSteps = 30;
    var scrollingContainer = false;
    var scrollingContent = false;
    var containerHeight;
    var contentHeight;
    var contentObjects = new Array();
    var originalslideSpeed = false;
    function slideContent(containerId)
    {
        var topPos = contentObjects[containerId]['objRef'].style.top.replace(/[^\-0-9]/g,'');
        topPos = topPos - contentObjects[containerId]['slideSpeed'];
        if(topPos/1 + contentObjects[containerId]['contentHeight']/1<0)topPos = contentObjects[containerId]['containerHeight'];
        contentObjects[containerId]['objRef'].style.top = topPos + 'px';
        setTimeout('slideContent("' + containerId + '")',slideTimeBetweenSteps);
    }
    function stopSliding()
    {
        var containerId = this.id;
        contentObjects[containerId]['slideSpeed'] = 0;
    }
    function restartSliding()
    {
        var containerId = this.id;
        contentObjects[containerId]['slideSpeed'] = contentObjects[containerId]['originalSpeed'];
    }
    initSlidingContent('scrollingContainer',2);
    function initSlidingContent(containerId,slideSpeed)
    {
        scrollingContainer = document.getElementById(containerId);
        scrollingContent = scrollingContainer.getElementsByTagName('DIV')[0];
        scrollingContainer.style.position = 'relative';
        scrollingContainer.style.overflow = 'hidden';
        scrollingContent.style.position = 'relative';
        scrollingContainer.onmouseover = stopSliding;
        scrollingContainer.onmouseout = restartSliding;
        originalslideSpeed = slideSpeed;
        scrollingContent.style.top = '0px';
        contentObjects[containerId] = new Array();
        contentObjects[containerId]['objRef'] = scrollingContent;
        contentObjects[containerId]['contentHeight'] = scrollingContent.offsetHeight;
        contentObjects[containerId]['containerHeight'] = scrollingContainer.clientHeight;
        contentObjects[containerId]['slideSpeed'] = slideSpeed;
        contentObjects[containerId]['originalSpeed'] = slideSpeed;
        slideContent(containerId);
    }


Промогите найти баг. Сам уже не знаю куда копать.  smile 

Это сообщение отредактировал(а) mexico - 9.4.2010, 12:48
PM MAIL   Вверх
IDVsbruck
Дата 9.4.2010, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 8
Всего: 22



Может, запускать его после загрузки всего DOMа, а не в коде?
PM MAIL   Вверх
mexico
Дата 9.4.2010, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 15.5.2009

Репутация: нет
Всего: нет



Ну сначало загружаеться документ полностью а потом уже подгружаються скрипты типо этого. 
Код

<script type="text/javascript" src="http://dms.dxloo.com/ajaxscripts/rss.php"></script>


Не думаю что проблема может быть в этом... 

ЗЫ: хотя 7ИЕ от него можно всякого ожидать. Спасибо щас попробую.
PM MAIL   Вверх
mexico
Дата 9.4.2010, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 15.5.2009

Репутация: нет
Всего: нет



IDVsbruck прав.  После того как повесил свою функцию на window.onload проблема решилась. 
Из ситуации вышел таким способом может форумчанам пригодиться.

Код

function setGlobalOnLoad(f) {
       var root = window.addEventListener || window.attachEvent ? window : document.addEventListener ? document : null
       if (root){
          if(root.addEventListener) root.addEventListener("load", f, false)
          else if(root.attachEvent) root.attachEvent("onload", f)
       } else {
          if(typeof window.onload == 'function') {
             var existing = window.onload
             window.onload = function() {
                existing()
                f()
             }
          } else {
             window.onload = f
          }
       }
    }
    setGlobalOnLoad(initSlidingContent);


ЗЫ: IDVsbruck спасибо за участие и помощ.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0427 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.