【发布时间】:2021-10-14 20:47:20
【问题描述】:
当我测试这个非常示例程序时,webview 无法正确显示 html 页面。
- 首页(第一个圆圈)显示正确!但是..
- 应该每 10 秒换一页,实际上没有。
- 它应该显示图表(当您单击第二个圆圈时),它没有。
- 它应该显示显示图像(当您单击第三个圆圈时)它不显示。
这是我的配置: openjdk-17
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>17.0.0.1</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-web</artifactId>
<version>17.0.0.1</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-fxml</artifactId>
<version>17.0.0.1</version>
</dependency>
代码
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.layout.VBox;
import javafx.scene.web.WebView;
import javafx.stage.StageStyle;
public class Main extends Application {
@Override
public void start(final Stage pStage) {
WebView lWebView = new WebView();
lWebView.getEngine().setJavaScriptEnabled(true);
lWebView.getEngine().load("http://it-topics.com/index3.html");
VBox lVBox = new VBox(lWebView);
pStage.setScene(new Scene(lVBox));
pStage.show();
}
public static void main(String[] args) {
launch();
}
}
我的总体观点是让 webview 像浏览器一样工作。有什么想法可以解决第 2、3 和 4 点吗?
【问题讨论】:
-
hmm .. 该页面的行为与您在普通浏览器中描述的不同(移动设备上的 firefox)
-
使用三星 S8、Android V9、最新版本的 Firefox 或 Chrome 我得到了这个结果:我看到的唯一区别是它是从第二个圆圈开始的,我描述的所有点仍然是真的。是你的意思吗?如果是这样,你是对的,但它并没有真正使我的问题无效,不是吗?
-
好吧,这似乎是我的旧移动版本 - 现在在桌面上我看到了你的描述。不过,对 fx 网络引擎了解不足,无法提供帮助,抱歉
-
Youtube 视频也无法启动:lWebView.getEngine().load("youtube.com/watch?v=nfA45OKvzM4"); // youtube 测试
-
您需要一个协议来将外部 url 加载到 WebEngine 中。