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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обновление данных в скрипте. 
:(
    Опции темы
kokcu
Дата 28.4.2010, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Здравствуйте. Работаю с яндекс картами. Есть метки, нужно эти метки в реальном времени предвигать.
Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title>Примеры. Работа с географическими координатами и отображение их на карте с помощью меток.</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <script src="http://api-maps.yandex.ru/1.1/index.xml?key=ANpUFEkBAAAAf7jmJwMAHGZHrcKNDsbEqEVjEUtCmufxQMwAAAAAAAAAAAAvVrubVT4btztbduoIgTLAeFILaQ==" type="text/javascript"></script> 
    <script type="text/javascript"> 
        // Создание обработчика для события window.onLoad
        YMaps.jQuery(function () {
            // Создание экземпляра карты и его привязка к созданному контейнеру
            var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);
 
            // Установка для карты ее центра и масштаба
            map.setCenter(new YMaps.GeoPoint(37.64, 55.76), 10);
 
            // Добавление меток на карту
            map.addOverlay(new YMaps.Placemark(new YMaps.GeoPoint(37.64, 55.76)));
            map.addOverlay(new YMaps.Placemark(new YMaps.GeoPoint(37.68, 55.73)));
            map.addOverlay(new YMaps.Placemark(new YMaps.GeoPoint(37.62, 55.73)));
        });
    </script> 
</head> 
 
<body> 
    <div id="YMapsID" style="width:600px;height:400px"></div> 
</body> 
 
</html>


метки эти можно двигать и мне нужно в  реальном времени следить за объектом. Программа получает координаты и пишет их предположим в тхт файл рядом со скриптом. Теперь как мне нарисовать метку, взяв координату из файла? 
Вроде можно через activex но не работает почему-то.
Код

<HTML> 
<HEAD> 

<script language=JavaScript> 
function ReadFromFile() {
    var strContent = ReadFileToString(document.Form1.TxtFileName.value);
    document.Form1.HdnContent.value = strContent;
    document.Form1.submit();
}

function ReadFileToString(strFileName) {
    var strContents;
    strContents = "";

    objFSO = new ActiveXObject("Scripting.FileSystemObject");
    if (objFSO.FileExists(strFileName)) {
        strContents = objFSO.OpenTextFile(strFileName, 1).ReadAll();
    }
    document.write(strContents); 
    return strContents;
    
} //end of function

</SCRIPT>
</HEAD>

<BODY>
<P>
<script language=JavaScript>ReadFileToString("1.txt")</SCRIPT>
</P>
</BODY>
</HTML>

И насколько стабильно чтение через activex? Обновлять метки нужно раз в 5 секунд.  
PM MAIL   Вверх
ksnk
Дата 28.4.2010, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

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



kokcu, уточните что это такое строится?
-- веб сервис, где каждый может проследить за перемещением меток?
-- рабочее место наблюдателя за перемещаемыми метками?

В первом случае нужно бы размещать программу, которая "получает координаты и пишет их предположим в тхт файл " на сервере и подгружать это файл ajax'ом с нужной периодичность.

во втором случае, эта программа сидит рядом с "рабочим местом", но в этом случае разумнее пользоваться более специализированными броузерами - FF + GreaseMonkey, к примеру умеет читать и писать локальные файлы. Оттранслированный пример с именем WebBrowser из любого туториала по средам программирования даст нам "броузер", у которого возможности по интергации в окружающую действительность практически не ограничены...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
kokcu
Дата 28.4.2010, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Рабочее место для одного человека, то есть рядом эта программа запущена и ловит. Плагин к firefox сейчас посмотрю, спасибо.

Добавлено @ 15:26
А можно ли как то менять значения переменных в ходе выполнения скрипта?

Добавлено @ 15:33
Вот код передвигаемой метки, нужно менять значения x И y не перезагружая страницу,это возможно?
Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title>Пример одной бешеной точки</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <script src="http://api-maps.yandex.ru/1.1/index.xml?key=AFJPzkoBAAAA0wlkNQMAPICy9TNyocL5eQ8SocnlXToPI5wAAAAAAAAAAABBuPPUVxu_FmaVunDUUsLA8_Hv5Q==" type="text/javascript"></script> 
    <script type="text/javascript"> 
        var placemark;
        var map;
        var line;
        var x = 38.917137;
        var y = 47.214752;
        window.onload = function () {
        map = new YMaps.Map(document.getElementById("YMapsID"));
             map.setCenter(new YMaps.GeoPoint(38.917137, 47.214752), 13);
    placemark=new YMaps.Placemark(new YMaps.GeoPoint(37.64, 55.76));
    map.addOverlay(placemark);
    map.addControl(new YMaps.Zoom());
    
    movePlacemark();
        }
        function movePlacemark() {
         var pt=placemark.getGeoPoint();
         pt.setLng(x);
         pt.setLat(y);
         placemark.setGeoPoint(pt);

         //или вот здесь читать х и у из файла

        setTimeout("movePlacemark();", 5000);        
        }
    </script> 
</head> 
<body> 
<p><i>По карте хаотично передвигается маркер. При этом используется только один маркер. Одновременно рисуется маршрут движения.</i></p> 
    <div id="YMapsID" style="width:600px;height:400px"></div> 
<br> 
<br> 
<p><a href="index.php">Список примеров</a></p> 
<hr> 
<center> 
<script type="text/javascript"><!--
google_ad_client = "pub-8016424660855810";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "CCCCCC";
google_color_bg = "FFFFFF";
google_color_link = "000000";
google_color_url = "666666";
google_color_text = "333333";
//--></script> 
<script type="text/javascript"

  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> 
</script> 
</center><hr> 
<center><a href="http://scripts.pws.ru/">scripts.pws.ru</a> - Copyright &copy; 2004-2009 by <a href="http://pws.ru/">PWS.RU</a><br> 
<!-- HotLog --> 
<script language="javascript"> 
hotlog_js="1.0";
hotlog_r=""+Math.random()+"&s=292539&im=134&r="+escape(document.referrer)+"&pg="+
escape(window.location.href);
document.cookie="hotlog=1; path=/"; hotlog_r+="&c="+(document.cookie?"Y":"N");
</script><script language="javascript1.1"> 
hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N")</script> 
<script language="javascript1.2"> 
hotlog_js="1.2";
hotlog_r+="&wh="+screen.width+'x'+screen.height+"&px="+
(((navigator.appName.substring(0,3)=="Mic"))?
screen.colorDepth:screen.pixelDepth)</script> 
<script language="javascript1.3">hotlog_js="1.3"</script> 
<script language="javascript">hotlog_r+="&js="+hotlog_js;
document.write("<a href='http://click.hotlog.ru/?292539' target='_top'><img "+
" src='http://hit20.hotlog.ru/cgi-bin/hotlog/count?"+
hotlog_r+"&' border=0 width=88 height=31 alt=HotLog></a>")</script> 
<noscript><a href=http://click.hotlog.ru/?292539 target=_top><img

src="http://hit20.hotlog.ru/cgi-bin/hotlog/count?s=292539&im=134" border=0

width="88" height="31" alt="HotLog"></a></noscript> 
<!-- /HotLog --> 
</center> 
</body> 
</html>


Это сообщение отредактировал(а) kokcu - 28.4.2010, 15:35
PM MAIL   Вверх
ksnk
Дата 28.4.2010, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

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



Нужно еще понять для чего все это строится.
-- для чужого дяди, который утащит это на флешке в сырой темный чулан и будет сам следить за своими метками? 
-- для постоянной слежки за метками в узком ограниченном круге специально обученного народу...
-- для проверки какой-то безумной идеи - временно. на коленке

для каждых случаев можно выбирать свой инструментарий:

для первого случая нужно состряпать win-приложение, интегрировать в него программу, реально следящую за метками online и визуализировать эти перемещения на встроенном в приложение броузере (Максимум гемороя разработчика и минимум телодвижений конечного юзера)

для второго можно состряпать и на FF, заодно появится довольно забавный опыт работы с пристяжными скриптами. Минимальным гемороем для каждого нового рабочего места будет установка FF с плагином, интеграция программы, настройка всего этого добра, но это не является непреодолимой преградой для advanced юзеров. (пополам геморой на обе стороны)

для третьего и для второго можно делать и на IE. Для этого просто почитать кое-что про защиту в IE и прописать нужные адреса в соответствующую зону защиты. после этого можно писать просто на javaScript, встроенные в IE средства позволят читать все, что угодно, включая чтение-запись файлов и запуск программ... при переносе рабочего места на новую точку весь геморой с защитой придется проходить заново...

понятно, что первый вариант перекрывает все три варианта, но для него требуется немного больше знаний  smile 


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
kokcu
Дата 28.4.2010, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Пункт номер 2 скорей. Устанавливать буду на конечные компы я и навсегда. А каким образом можно читать файл из яваскрипт с помощью плагинов? Куда не ткнусь везде написано про гре сманки что позволяет юзать скрипты но нигде не написаны практические приемы.
PM MAIL   Вверх
ksnk
Дата 28.4.2010, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

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



GM_getResourceText по идее должен читать текстовый рессурс откуда угодно, хоть с локального компа, хотя это надо бы проверить...
http://wiki.greasespot.net/






--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
kokcu
Дата 28.4.2010, 23:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



То есть устанавливаю скрипт примерно следующего содержания 
Код

// ==UserScript==
// @resource prototype С:/1.txt
// ==/UserScript==
function GetString(){
var prototypeSource = GM_getResourceText("prototype");
return prototypeSource;
}


потом на странице в скрипте если мне нужен текст я просто вызываю var text = GetString()?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




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


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

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