Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> VB + WebBrowser + JavaScript, Запуск "внешней" JavaScript функции 
:(
    Опции темы
ProgramerForever
  Дата 23.12.2008, 21:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 15.11.2006
Где: Новосибирск

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



Привет всем! Возникла проблемка. Тут я поднимал тему запуска скрипта. Теперь нужно запустить скрипт, который нахоится вне загружаемого документа (или же просто добавить его в конец загружаемой страницы, как это делает Опера). Причём скрипт в себе имеет обращения к документу типа "document.", и эти обращения должны идти к ЗАГРУЖАЕМОЙ страничке. Вот.
PM MAIL WWW ICQ   Вверх
Akina
Дата 23.12.2008, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

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



Цитата(ProgramerForever @  23.12.2008,  22:18 Найти цитируемый пост)
или же просто добавить его в конец загружаемой страницы

Вероятно, следует использовать один из методов CreateElement/InsertAdjacentElement/AppendChild, в крайнем случае ExecCommand. Если будет совсем тухло - посмотри, что отдаёт DomDocument.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ProgramerForever
  Дата 24.12.2008, 00:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 15.11.2006
Где: Новосибирск

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



Добавить код я смог (может и не добавить, а заменить, не знаю), но теперь надо получить значение, которое вернёт JavaScript функция.
Код

setTimeout("first()",2000);
function first()
{
var hrefs=getElementsByClass('l');
var s='';
for(var i=0;i<hrefs.length;i++)
{
   s+=hrefs[i]+"<BR>";
}
///document.write("<div name='GooL'>"+s+"</div>");
return s;
}

function getElementsByClass(searchClass,node,tag) {
    var classElements = new Array();
    if ( node == null )
        node = document;
    if ( tag == null )
        tag = '*';
    var els = node.getElementsByTagName(tag);
    var elsLen = els.length;
    
    var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
    for (i = 0, j = 0; i < elsLen; i++) {
        if ( pattern.test(els[i].className) ) {
            classElements[j] = els[i];
            j++;
        }
    }
    return classElements;
}

Как мне в коде получить это самое s? Ну, или как я пробовал, создать <div>, а потом как-то получить его содержимое.
PM MAIL WWW ICQ   Вверх
Akina
Дата 24.12.2008, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

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



Цитата

Определенные команды, например команда копирования, возвращают значения. Для извлечения таких значений следует использовать соответствующий неуправляемый метод ссылки на свойство DomDocument.




--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ProgramerForever
  Дата 24.12.2008, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 15.11.2006
Где: Новосибирск

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



Akina, А по-русски?  smile 
Пробовал так:
Код

strJava = "first()"
ReVal = WB.Document.parentwindow.execscript(strJava, "JavaScript")

Не получается вроде как  smile 
PM MAIL WWW ICQ   Вверх
Akina
Дата 24.12.2008, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

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



Цитата(ProgramerForever @  24.12.2008,  12:50 Найти цитируемый пост)
А по-русски?

Скачиваешь русскоязычную MSDN 2008 (это бесплатно), инсталлишь и читаешь до пока не надоест.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
ProgramerForever
Дата 24.12.2008, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 15.11.2006
Где: Новосибирск

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



Спасибо за совет! (не знал, что сие чудо на русском есть). Уже качаю. (Но вопрос остался открытым)
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




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


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

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