Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: ActiveX/СОМ/CORBA > WebBrowser, фреймы и JavaScript


Автор: Perekrestok 27.11.2007, 17:30
Прветствую.

Стоит проблема выполнения скрипта JavaScript.
Примеров для запуска скрипта море. Но они все для главного страницы.
Тут проблема в том, что страница находится в фрейме. Имя фрейма известно.

Подскажите, плиз. Работа стала.
На Делфи пишу недавно. Если вас не затруднит, бросте строку кода

Вот пример для запуска скрипта. Что тут изменить для запуска из фрейма?
Код

function ExecuteScript(doc: IHTMLDocument2; script: string; language: string):
  Boolean;
var
  win: IHTMLWindow2;
  Olelanguage: Olevariant;
begin
  if doc <> nil then
  begin
    try
      win := doc.parentWindow;
      if win <> nil then
      begin
        try
          Olelanguage := language;
          win.ExecScript(script, Olelanguage);
        finally
          win := nil;
        end;
      end;
    finally
      doc := nil;
    end;
  end;
end;


Желательно что бы функция начиналась так - 
Код

function ExecuteScriptFrame(webb: TWebBrowser; script: string; language: string; frame: string):
  Boolean;

Автор: December 27.11.2007, 21:57
Берёшь TWebBrowser, находишь у него фрейм по имени, у фрейма берёшь IHTMLDocument2 - и к нему уже применяешь эту функцию.
Следует также помнить про вложенные фреймы...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)