Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Как заставить скрипт не грузиться?  (Прочитано 1900 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Frankenstein2017

  • Участник
  • *
  • Сообщений: 222
  • Хатуль Мадан
    • Просмотр профиля
Re: Как заставить скрипт не грузиться?
« Ответ #15 : 12 Января 2011, 14:26:38 »
Там информер с постороннего сайта :) . Для начала надо его скопировать локально, проверить, будет ли он так работать, а потом править.
Что править, чтобы обойтись минимальными усилиями, я показал.
У б у н т а р и и   в с е х   с т р а н ,   о б ъ е д и н я й т е с ь !

Оффлайн smaharbA

  • Участник
  • *
  • Сообщений: 220
    • Просмотр профиля
Re: Как заставить скрипт не грузиться?
« Ответ #16 : 13 Января 2011, 12:38:11 »
http://www.n-d.ru/images/wv.html
(поправлено, что бы под стандарт вписывалось)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type='text/css'>
/*<![CDATA[*/
div#widget_valut { position:absolute; top:120px; left:63px; width:190px;  }
/*]]>*/
</style>
<title></title>
<script type="text/javascript">
//<![CDATA[
        var timeout=5000;
        var timer=0;
        function fail_valut() {
                var p = document.getElementById("widget_div");
                p.innerHTML="";
                var s = document.createElement("li");
                s.innerHTML = "<b>Фигня вышла, не грузится курс...<\/b>";
                p.appendChild(s);
        }
        function loa() {
                if (window.ActiveXObject) {
                        try {
                                http = new ActiveXObject("Msxml2.XMLHTTP");
                        } catch (e) {
                                http = new ActiveXObject("Microsoft.XMLHTTP");
                        }
                } else if (window.XMLHttpRequest) {
                        http = new XMLHttpRequest();
                }
                if (!http) return;
                http.open("GET", window.location.href, true);
                http.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 GMT");
                http.onreadystatechange = function() {
                        if (http.readyState == 4) {
                                var s = http.responseText;
                                s=s.replace(/[\r\n]/g," ");
                                r=s.match(/[<]body.*?body[>]/gi);
                                s=r[r.length-1];
                                s=s.replace(/[<]div id=.widget_div..*[>].*?[<]\/div[>]/gi,'<div id="widget_div"><div>');
                                document.body.innerHTML=(s.replace(/[<][\/]*body.*?[>]/gi,""));
                                fail_valut();
                        }
                }
                http.send(null);
        }
        function start() {
                var interval = window.setInterval(function() {
                        if ((! document.getElementById("widget_valut")) && (timer != 0)) return;
                        window.clearInterval(interval);
                        interval = 0;
                        timer = window.setTimeout(function() {
                                try {
                                        window.stop();
                                } catch(e) {
                                        document.execCommand("stop");
                                };
                                // Для нормального браузера, такого как ИЕ вполне работает следующее (оно и должно работать и последующий аджакс не нужен тогда)
                                document.getElementById("widget_div").removeChild(document.getElementById("widget_script"));
                                // fail_valut();
                                loa();
                                return;
                        },timeout);
                },200);
        }
//]]>
</script>
</head>
<body onload="window.clearTimeout(timer);timer=0;document.getElementById('widget_div').style.display='block';">
<p>Какой то контент ...</p>
<div id='widget_div' style="display: none">
<script type="text/javascript">
//<![CDATA[
start()
//]]>
</script>
<script src="http://otp.siteheart.com/valuti/widget.js" type="text/javascript" charset="utf-8" id="widget_script">
</script>
<div id="widget_valut" lang="ru" style="display: none"></div>
</div>
<div style="display:none" id="test_div">Это надо, можно и без этого сделать</div>
</body>
</html>
« Последнее редактирование: 13 Января 2011, 13:22:34 от smaharbA »
Я конечно далек от мысли...(с)

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Re: Как заставить скрипт не грузиться?
« Ответ #17 : 13 Января 2011, 16:52:37 »
Спасибо за помощь...

Меня интересует, если я Ваш код вставлю в , например, code_of_informer.php , и на страничке там где мне надо вывести информер впишу <? include "code_of_informer.php"; ?> , это будет правильно?

п.с. Или надо этот код в конец сайта влепить... просто я теряюсь как будет более рациональнее...

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Как заставить скрипт не грузиться?
« Ответ #18 : 13 Января 2011, 17:00:09 »
ЕПРСТ...
Рациональнее использовать jquery.
Он
- на порядок уменьшает код, чем в чистом JS
- позволяет разделять html и код
- страница готова к использованию до загрузки div
- и заложенный от рождения ajax.
ЗЫ. Я уже не говорю по простой DOM и независимость от браузеров.
« Последнее редактирование: 13 Января 2011, 17:03:22 от alexander.pronin »

Оффлайн smaharbA

  • Участник
  • *
  • Сообщений: 220
    • Просмотр профиля
Re: Как заставить скрипт не грузиться?
« Ответ #19 : 13 Января 2011, 17:17:01 »
джиквери довольно привередлив к браузерам и к изменениям в дом и гекто (а они очень не редки к огорчению)

но конечно, оно будет скорее всего следовать изменениям моды, хотя и не факт

TrEK - вряд ли без переделки пойдет, тут замена боди осуществляется, и в вашем случае так может оказаться несколько боди
« Последнее редактирование: 13 Января 2011, 17:19:04 от smaharbA »
Я конечно далек от мысли...(с)

Оффлайн TrEK

  • Автор темы
  • Активист
  • *
  • Сообщений: 738
  • good day in FolK-King life :)
    • Просмотр профиля
    • smallprogs.ru
Re: Как заставить скрипт не грузиться?
« Ответ #20 : 13 Января 2011, 19:27:46 »
smaharbA, а 5000 - это по времени сколько?.



Пользователь решил продолжить мысль 14 Января 2011, 11:05:50:
джиквери довольно привередлив к браузерам и к изменениям в дом и гекто (а они очень не редки к огорчению)

но конечно, оно будет скорее всего следовать изменениям моды, хотя и не факт

TrEK - вряд ли без переделки пойдет, тут замена боди осуществляется, и в вашем случае так может оказаться несколько боди

Ну да, в моем случае замена необходима ) Попробую Разобраться.. меня интересует еще , почему информер не отображается в ИЕ ? :'(




Пользователь решил продолжить мысль 14 Января 2011, 17:22:02:
ЕПРСТ...
Рациональнее использовать jquery.
Он
- на порядок уменьшает код, чем в чистом JS
- позволяет разделять html и код
- страница готова к использованию до загрузки div
- и заложенный от рождения ajax.
ЗЫ. Я уже не говорю по простой DOM и независимость от браузеров.


Спасибо , будем изучать..
« Последнее редактирование: 14 Января 2011, 17:23:03 от TrEK »

Оффлайн smaharbA

  • Участник
  • *
  • Сообщений: 220
    • Просмотр профиля
Re: Как заставить скрипт не грузиться?
« Ответ #21 : 14 Января 2011, 22:44:26 »
в 6, 8 и 9 ие отображается по ссылке http://www.n-d.ru/images/wv.html
в 7 нет пока возможности проверить
(таймаут ожидания загрузки скрипта выставляется переменной timeout в миллисекундах)
Я конечно далек от мысли...(с)

 

Страница сгенерирована за 0.033 секунд. Запросов: 22.