Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вопрос по MSHTML / 5 сообщений из 5, страница 1 из 1
28.07.2005, 11:53:06
    #33188838
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по MSHTML
Вопрос, похоже, адресуется в первую очередь marvan'у.

В WebBrowser гружу страничку, динамически добавляю на нее элементы с onclick="javascript:somefunc();", но эта somefunc изначально в html-файле не описана. Пытаюсь добавить скрипт:
Код: plaintext
1.
    Set scr = Doc.createElement("<script language=javascript>") 
    Doc.appendChild scr 

Элемент добавляется, но внедрить в него текст функции не получается. На scr.outer/innerHTML = "function somefunc {..." выдает ошибку. Если загнать весть текст скрипта в createElement, в outerHTML все равно пусто. Еще попробовал написать somefunc в коде программы и сделать element.attachEvent "onclick", AddressOf somefunc - выдает ошибку несовпадения типов.

Можно ли вообще как-нибудь внедрить скрипт в загуженный документ, чтобы элементы могли ими пользоваться?
...
Рейтинг: 0 / 0
28.07.2005, 12:12:12
    #33188932
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по MSHTML
внедрите вот такую строку
<SCRIPT language="JavaScript" src="scripts.js" type="text/javascript"></SCRIPT>
...
Рейтинг: 0 / 0
28.07.2005, 12:33:10
    #33189021
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по MSHTML
Не подходит. Текст скрипта должен содержаться только в экзешнике.
...
Рейтинг: 0 / 0
29.07.2005, 21:20:46
    #33192621
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по MSHTML
Код: plaintext
1.
\'References: Microsoft HTML Object Library\'Controls: Microsoft Internet Controls\'добавить на форму WebBrowser с именем WebBrowser1Private Sub Form_Load()    Dim mStr As String    Dim mDoc As MSHTML.IHTMLDocument    Dim mHTMLDocument As MSHTML.HTMLDocument    \'загрузка простого документа    WebBrowser1.navigate "res://mshtml.dll/blank.htm"    While WebBrowser1.document Is Nothing    \'ждём создания документа        DoEvents    Wend    Set mDoc = WebBrowser1.document    mStr = "<html>" & _           "  <head><style type=""text/css"">" & _           "    body {overflow-y: visible;}" & _           "    span {color: #003DB2;}" & _           "    li   {cursor: hand;}" & _           "  </style>" & _           "  </head><body>" & _           "  <ul>" & _           "    <li id=""li1"" sel=""1"">пункт <span>1</span></li>" & _           "    <li id=""li2"" sel=""0"">пункт <span>2</span> " & _           "    (не активен)</li>" & _           "    <li id=""li3"" sel=""1"">пункт <span>3</span></li>" & _           "  </ul>" & _           "  <div id=""txtout"">нужно кликнуть по списку</div>" & _           "</body></html>"    \'меняем содержание всего документа    mDoc.Write mStr    Set mDoc = Nothing    \'присваиваем html документ    Set mHTMLDocument = WebBrowser1.document        \'добавляем обработку событий с помощью JavaScript    Dim scr As IHTMLScriptElement    With mHTMLDocument        \'создаём скрипт        Set scr = .createElement("script")        scr.Type = "text/javascript"        \'задаём текст скрипта        scr.Text = _            "function clickIt() {" & _            "txtout.innerHTML = " & _            """выбран: "" + window.event.srcElement.outerText;}"        .appendChild scr        \'задаём обработку событий для указанных элементов        .parentWindow.execScript _            "li1.attachEvent (\'onclick\',clickIt);" & _            "li3.attachEvent (\'onclick\',clickIt);"    End WithEnd Sub
Как отформатирован этот код?
...
Рейтинг: 0 / 0
01.08.2005, 09:41:07
    #33193546
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по MSHTML
Спасибо. А то пришлось извращаться через IFRAME
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вопрос по MSHTML / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]