Unity WebView 插件⭐️(十五)特定模块 WebGL网页视图—WebGLWebView
📢前言
该文章是WebView 插件系列文章,传送门:浏览器插件3D WebView专栏
上一篇文章对3D WebView 插件的 UwpWebView
做了一个详细的介绍说明
那本篇文章就来介绍下 WebGLWebView
的说明和使用方法
🔔特定模块 WebGL网页视图—WebGLWebView
用于 WebGL的2D WebView使用的IWebView实现。
此类还包括用于 WebGL 特定功能的额外方法。
1.框架元素ID
string IFrameElementID
获取idwebview 的< iframe >元素的唯一属性。
例子
#if UNITY_WEBGL && !UNITY_EDITOR
var webGLWebView = webViewPrefab.WebView as WebGLWebView;
Debug.Log("IFrame ID: " + webGLWebView.IFrameElementID);
#endif
2.CanAccessIFrameContent
bool CanAccessIFrameContent()
指示2D WebView 是否可以访问webview 的iframe 中的内容。如果无法访问 iframe 的内容,则大多数 IWebView API 将被禁用。
例子
#if UNITY_WEBGL && !UNITY_EDITOR
var webGLWebView = webViewPrefab.WebView as WebGLWebView;
if (webGLWebView.CanAccessIFrameContent()) {
Debug.Log("The iframe content can be accessed 👍");
}
#endif
3.本地执行JavaScript
static bool ExecuteJavaScriptLocally(string javaScript)
在 Unity 应用程序的窗口中本地执行给定的 JavaScript。
例子
#if UNITY_WEBGL && !UNITY_EDITOR
// Changes the background color of the Unity app to green.
WebGLWebView.ExecuteJavaScriptLocally("document.body.style.backgroundColor = 'green';")
#endif
4.设置UnityContainerElementId
static bool SetUnityContainerElementId(string containerId)
显式设置 2D WebView 应用作 Unity 应用程序容器的 HTML 元素。如果其 ID 设置为“unityContainer”或“unity-container”的默认值之一,2D WebView 会自动检测 Unity 应用程序容器元素。
但是,如果您的应用程序使用对容器元素使用不同 ID 的自定义 WebGL 模板,则必须调用此方法来设置容器元素 ID。用于 WebGL 的 2D WebView 通过将< iframe >元素添加到应用程序容器来工作,因此如果无法找到 Unity 应用程序容器元素,它将无法正常运行。
例子
#if UNITY_WEBGL && !UNITY_EDITOR
WebGLWebView.SetUnityContainerElementId("your-custom-id");
#endif
- 点赞
- 收藏
- 关注作者
评论(0)