如何用Delphi在TWebBrowser中调用JavaScript
1个回答
推荐于2016-02-26 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:117538
获赞数:517195
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。
向TA提问 私信TA
关注
展开全部
XE6的TWebBrowser新增了EvaluateJavaScript方法,这个方法,允许我们与TWebBrowser已经加载的的网页进行交互。这太方便了!作者用一个具体的实例,演示如何调用Google map的API。
首先,建立一个网页:
const
{ Was used sample from }
{ https://developers.google.com/maps/documentation/javascript/examples/directions-panel }
cRoute =
''
+ ''
+ ' '
+ ' '
+ ' '
+ ' setPanel()'
+ ' '
+ ' '
+ '
+ '
+ ' '
+ ' '
+ '
'
+ ' Start:'
+ ' '
+ ' End:'
+ ' '
+ '
'
+ ' '
+ ' '
+ ' '
+ '';
然后,用一个TWebBrowser调入:
WebBrowser1.LoadFromStrings(cRoute, '');
再声明两个常量:
cChicagoWinona =
'document.getElementByIdx_x(''start'').value = "chicago, il";'
+ 'document.getElementByIdx_x(''end'').value = "winona, az";'
+ 'calcRoute();';
cStLouisGallupNM =
'document.getElementByIdx_x(''start'').value = "st louis, mo";'
+ 'document.getElementByIdx_x(''end'').value = "gallup, nm";'
+ 'calcRoute();';
用两个按钮调用:
procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.EvaluateJavaScript(cChicagoWinona);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
WebBrowser1.EvaluateJavaScript(cStLouisGallupNM);
end;
首先,建立一个网页:
const
{ Was used sample from }
{ https://developers.google.com/maps/documentation/javascript/examples/directions-panel }
cRoute =
''
+ ''
+ ' '
+ ' '
+ ' '
+ ' setPanel()'
+ ' '
+ ' '
+ '
+ '
+ ' '
+ ' '
+ '
'
+ ' Start:'
+ ' '
+ ' End:'
+ ' '
+ '
'
+ ' '
+ ' '
+ ' '
+ '';
然后,用一个TWebBrowser调入:
WebBrowser1.LoadFromStrings(cRoute, '');
再声明两个常量:
cChicagoWinona =
'document.getElementByIdx_x(''start'').value = "chicago, il";'
+ 'document.getElementByIdx_x(''end'').value = "winona, az";'
+ 'calcRoute();';
cStLouisGallupNM =
'document.getElementByIdx_x(''start'').value = "st louis, mo";'
+ 'document.getElementByIdx_x(''end'').value = "gallup, nm";'
+ 'calcRoute();';
用两个按钮调用:
procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.EvaluateJavaScript(cChicagoWinona);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
WebBrowser1.EvaluateJavaScript(cStLouisGallupNM);
end;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询