3

我正在尝试使用以下代码将 mozilla 查看器集成到 JavaFx WebView 中:

    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.web.WebView;
    import javafx.stage.Stage;


    public class TestStrict extends Application {

      @Override
      public void start(Stage primaryStage) throws Exception {
        WebView webView = new WebView();

        String url = TestStrict.class.getClassLoader().getResource("pdfjs-1.1.366-dist/web/viewer.html").toExternalForm();
        webView.getEngine().load(url);

        Scene scene = new Scene(webView);

        primaryStage.setScene(scene);

        primaryStage.setWidth(800);
        primaryStage.setHeight(600);

        primaryStage.show();

      }

      public static void main(String[] args) {
        launch(args);
      }

    }

pdfjs-1.1.366-dist 文件夹是从pdfjs GitHub下载的

我还更改了viewer.html只是在里面添加 firebug-lite:

    <script type='text/javascript' src='http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js'></script>

现在,当我运行应用程序时,我得到了查看器框架,但没有加载默认的 pdf,并且在 firebug 控制台中出现以下错误:

“TypeError:未定义不是对象(评估'globalScope.PDFJS')(pdf.worker.js,103)”

我删除了 javascript 文件中的所有“使用严格”指令,一切正常。

我不知道这是 JavaFX 还是内部 WebKit 中的错误,但它发生在 1.8.0_60 版本中。

那么有什么方法可以禁用严格模式,因为将在我无法控制脚本并删除“使用严格”指令的地方加载其他网页?

4

0 回答 0