zoukankan      html  css  js  c++  java
  • jxbrowser 实现java 和 js互相调用

    https://blog.csdn.net/shuaizai88/article/details/73743626

    今天我们使用jxbrowser  实现js直接调用java代码。

    调用javaTest类的 alert方法。 

    主要就是给浏览器对象添加一个监听,然后在页面渲染完成之后,获取到js的window对象,给window对象添加一个 属性。

    final Browser browser = new Browser();
            BrowserView browserView = new BrowserView(browser);
            JFrame frame = new JFrame();
            frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
            frame.add(browserView, BorderLayout.CENTER);
            frame.setSize(700, 500);
            frame.setLocationRelativeTo(null);
            frame.setVisible(true);
            browser.addLoadListener(new LoadAdapter() {
                @Override
                public void onFinishLoadingFrame(FinishLoadingEvent event) {
                    if (event.isMainFrame()) {
                        JSValue window = browser.executeJavaScriptAndReturnValue("window");
                        // 给jswindows对象添加一个扩展的属性
                        JavaTest javaObject = new JavaTest();
                        window.asObject().setProperty("javaTest", javaObject);
                    }
                }
            });
            browser.loadURL("E:/workspace48/browser/test.html");
    <script>
     
     
     
     function exeJava(){
         try
     {
         javaTest.alert('111');
     }
     catch(e)
     {
         alert(e);
     }
     }
    </script>
    <body onclick="exeJava()">
    111111
    </body>
  • 相关阅读:
    gvim : invalid input string
    端口
    Sequence Overview
    vi的使用
    Ubuntu安装CodeBlocks相关问题总结
    中断
    Ubuntu Software Repository
    UVA 12299 RMQ with Shifts
    UVA 12293 Box Game
    POJ 3468 A Simple Problem with Integers (1)
  • 原文地址:https://www.cnblogs.com/tc310/p/10795610.html
Copyright © 2011-2022 走看看