本例测试用的 Html 文件(包含三个要测试的 Js 函数):
<html> <head> <title></title> <SCRIPT LANGUAGE=javascript> <!-- //重复字符串的函数 function JsStr2(str) { return str + str; } //计算一个数的倍数的函数 function JsNum2(num) { return num + num; } //弹出信息框的函数 function JsMsg(msg) { alert(msg); } //--> </SCRIPT> </head> <body> </body> </html>
本例效果图:
代码文件:
Unit1; Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OleCtrls, SHDocVw; TForm1 = (TForm) WebBrowser1: TWebBrowser; Button1: TButton; Button2: TButton; Button3: TButton; FormCreate(Sender: TObject); Button1Click(Sender: TObject); Button2Click(Sender: TObject); Button3Click(Sender: TObject); ; Form1: TForm1; TForm1.FormCreate(Sender: TObject); HtmlPath: ; WebBrowser1.Left := -WebBrowser1.Width; HtmlPath := ExtractFilePath(ParamStr()) + ; WebBrowser1.Navigate(HtmlPath); ; TForm1.Button1Click(Sender: TObject); str: Variant; str := WebBrowser1.OleObject.document.parentWindow.JsStr2(); ShowMessage(str); ; TForm1.Button2Click(Sender: TObject); num: Variant; num := WebBrowser1.OleObject.document.parentWindow.JsNum2(); ShowMessage(num); ; TForm1.Button3Click(Sender: TObject); WebBrowser1.OleObject.document.parentWindow.JsMsg(); WebBrowser1.OleObject.document.parentWindow.execScript(, ); ; .
转载于:https://blog.51cto.com/rosehacker/450208