zoukankan      html  css  js  c++  java
  • delphi ScriptGate 调用JS

    在 FireMonkey 使用 TWebBrowser 调用 Javascript函数并获取返回值以及 JavaScript 中调 Delphi 的函数/过程,普遍都在使用老掉牙的URL重定的方法,还要改 FMX 的源码,相当繁琐。

    现在使用 ScriptGate 可轻易解决这个问题,ScriptGate  支持 Windows, macOS, Android, iOS,非常好用,强烈推荐。
    
    项目地址:https://bitbucket.org/freeonterminate/scriptgate
    
     用法如下:
    

    HTML / JavaScript:



    Call Delphi procedure ;

    Delphi:
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    // Binding ScriptGate to WebBrowser and setting the scheme delphi
    // The scheme is also specified on the JavaScript side
    // Same as file :, JavaScript: etc.
    ScriptGate := TScriptGate.Create(Self, WebBrowser1, 'delphi');
    end;

    // Call helloJS () JavaScript.
    // You can also retrieve the return value using an anonymous function.
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    FScriptGate.CallScript(
    'helloJS()',
    procedure(const iResult: String)
    begin
    ShowMessage(iResult); // Show return value
    end
    );
    end;

    // Execute arbitrary JavaScript
    // You can also retrieve the return value using an anonymous function.
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    FScriptGate.Eval(
    'document.getElementsByTagName("html")[0].outerHTML',
    procedure(const iResult: String)
    begin
    ShowMessage(iResult); // Show return value
    end
    );
    end;

    // It is a method published in JavaScript and is called from JavaScript.
    procedure TForm1.HelloDelphi;
    begin
    ShowMessage('Hello, Delphi!');
    end;

  • 相关阅读:
    设置linux查看历史命令显示执行时间
    CentOS7.6操作系统安装实例以及Linux版本、哲学思想介绍
    JavaScript 数据结构1
    原生js 正则表达
    js Event事件
    引用类型: 归并方法
    引用类型: 迭代方法
    引用类型 位置方法 indexOf()和 lastIndexOf()
    引用类型 操作方法
    引用类型 重排序方法
  • 原文地址:https://www.cnblogs.com/chenmfly/p/8558301.html
Copyright © 2011-2022 走看看