Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.05.2013, 11:27
Новичок на форуме
Отправить личное сообщение для Kreol Посмотреть профиль Найти все сообщения от Kreol
 
Регистрация: 04.07.2012
Сообщений: 6

пишем расширение для chrome
Приветствую!
Господа подскажите пожалуйста кодом.
Пытаюсь написать расширение для хрома

должна быть панелька с 5 кнопочками и текстовыми полями для логина и номера проекта (по идее всплывающая панелька)
nick и номер project (должны сохраняться)
При отсылке запроса вида

http://my_google/OutData.php?nick=" + nick + "&project=" + project

мы получаем html такого формата:

<div class="version">1.0.2</div>
<div class="status">1</div>
<div class="URL">http://url.com</div>
<div class="url_id">42323</div>
<div class="project">13</div>
<div class="todo">3</div>

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

Код:
version=1.0.2
status=1
URL=http://url.com
url_id=42323
project=13
todo=3
и далее перейти по указанному url.
После загрузки страницы нажимаем на кнопку, например: Сайт Принят
при этом формируется ответ серверу и отсылается.
Цикл повторяется, формируем входящий, получаем ссылку, смотрим ее, отправляем ответ.
Ответ формируется в виде:

url = "http://my_google/InData.php?project=" + project + "&url_id=" + url_id + "&todo=" + todo + "&terms=" + terms + "&nick=" + nick;

в terms записываем, что "Сайт принят".

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

в background.js 
 //получение кода страницы 
 function new_post_data(name, number){
 console.log(name+" "+number); (странно но консоль почему-то не работает)
//создаем хак 
 xhr0 = new XMLHttpRequest();
 xhr0.onreadystatechange = function(){
// дожидаемся загрузки
    if (xhr0.readyState == 4){
        var text = xhr0.responseText; 
    alert(text); //также не пашет()
// попытка получить урл из загруженной страницы
    var url = f_parse_text_ant(text);
//открываем страничку в новой вкладке
    page_info(url);
    } else {
    
    }
  }
var formData = new FormData();  
xhr0.open("GET", 'http://my_google/OutData.php?nick=' name '&project=' number);
xhr0.send(formData);
 }
  
//пытаемся разобрать текст, пока что просто хотел получить урл
  function f_parse_text_ant(text){
var st=text;
var s1;
var url= new Array();
var res_parse_new = new Array();
// подозреваю что регулярка, если она вообще здесь нужна, должна быть поменьше.
var pattern= /~^(?:(?:https?|ftp|telnet)://(?:[a-z0-9_-]{1,32}". "(?::[a-z0-9_-]{1,32})?@)?)?(?:(?:[a-z0-9-]{1,128}\.)+(?:com|net|". «org|mil|edu|arpa|gov|biz|info|aero|inc|name|[a-z]{2})|(?!0)(?:(?». "!0[^.]|255)[0-9]{1,3}\.){3}(?!0|255)[0-9]{1,3})(?:\/[a-z0-9.,_@%&". "?+=\~\/-]*)?(?:#[^ '\"&]*)?$~i/;
 
var res; var i=0;
 while ( (res = pattern.exec(st)) != null) {
   url[i]=res[1]; 
   i++;
  }
return url;
}
 
//открытие в новой вкладке.
 function page_info(p_url){
  chrome.tabs.create({url: p_url});
 }

Помогите пожалуйста дореализовать .
Заранее спасибо .
p.S. Простите если написал не в тот раздел. Не смог определится.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
HTA-приложение для радио Pianorama Magneto Ваши сайты и скрипты 42 22.01.2012 08:34
Как из javascript'а сделать расширение для FF? nule Общие вопросы Javascript 0 07.11.2011 11:58
Как указать title при открытии окна через window.open для chrome milvic Opera, Safari и др. 4 15.01.2011 15:18
тег <audio> в Opera, Chrome, Firefox Magneto Javascript под браузер 12 25.11.2010 15:12