2 JavaFX WebView组件概述
本章介绍了JavaFX嵌入式浏览器,它是一个用户界面组件,通过其API提供了一个Web浏览器和完整的浏览功能。
嵌入式浏览器组件基于WebKit,一个开源的Web浏览器引擎。它支持层叠样式表(CSS)、JavaScript、文档对象模型(DOM)和HTML5。
嵌入式浏览器使您能够在JavaFX应用程序中执行以下任务:
-
从本地和远程URL渲染HTML内容
-
获取Web历史记录
-
执行JavaScript命令
-
从JavaScript调用JavaFX
-
管理Web弹出窗口
-
对嵌入式浏览器应用效果
嵌入式浏览器继承了Node
类的所有字段和方法,因此具有其所有功能。
构成嵌入式浏览器的类位于javafx.scene.web
包中。图2-1显示了嵌入式浏览器的架构以及它与其他JavaFX类的关系。
WebEngine类
WebEngine
类提供基本的网页功能。它支持用户交互,如导航链接和提交HTML表单,尽管它不直接与用户交互。WebEngine
类一次处理一个网页。它支持加载HTML内容、访问DOM以及执行JavaScript命令等基本浏览功能。
有两个构造函数可用于创建WebEngine
对象:一个空构造函数和一个带指定URL的构造函数。如果使用空构造函数实例化,URL可以通过load
方法传递给WebEngine
对象。
从JavaFX SDK 2.2开始,开发人员可以为特定的Web引擎启用和禁用JavaScript调用,并应用自定义样式表。用户样式表用用户定义的样式替换此WebEngine
实例中呈现的页面上的默认样式。