cordova inAppBrowser在打开时有下一个选项(如https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-inappbrowser/中所述):
隐藏:设置为yes以创建浏览器并加载页面,但不显示它。加载完成后,loadstop事件将触发。忽略 或设置为no(默认)以使浏览器打开并正常加载。
问题是我希望在浏览器完全呈现在设备屏幕上时检测并执行代码。 api提供" loadstop"事件,但它在设备的屏幕显示网页之前执行。
有没有办法发现这一刻?
编辑:
这就是我尝试的(不完全相似):
inappService.runScript(
function (params) {
function handleVisibilityChange() {
if (!document.hidden) {
$('input#otp')[0].focus();
}
}
document.addEventListener('visibilitychange', handleVisibilityChange, false);
);
但" visibilitychange"页面预加载隐藏时发生。知道如何在网页上用javascript检测它吗?感谢!!!
答案 0 :(得分:1)
inAppBrowser
在完全呈现页面时没有任何事件。但是,您可以尝试使用其executeScript()
方法,该方法允许注入您自己的JavaScript。这允许您使用您喜欢的任何技术来检测页面的完整呈现。