我正在尝试创建一个加载网站然后添加一些自定义 CSS 以将其调整为移动设备的应用。
我正在使用 window.open 成功加载页面,我在调用 browser.insertCSS 的 loadstop 上有一个回调,这就是问题所在。
如果我这样做:
browser.insertCSS({code:"body{background-color:red;}");
样式应用正确。但是,如果我这样做:
browser.insertCSS({file:"mobile-style.css");
然后将相同的 CSS 添加到文件中,它不会加载
我尝试了不同的路径(将文件放在 www 文件夹中,放在 css 文件夹中,与 JS 文件放在同一文件夹中,并用“./mobile-style.css”、“mobile-style.css”引用它)。 css", "/www/mobile-style.css", "/mobile-style.css"但它们似乎都无法正确加载文件。
我看到另一个帖子 What should file paths fed to insertCSS() be relative to?有人问了同样的问题,但没有被接受的答案(我已经尝试了那里的建议,但没有用)。
如有任何帮助,我们将不胜感激。
谢谢
- 将
最佳答案
您必须等到您的 inAppBrowser 页面加载完成。
您必须添加一个事件监听器:
var inApp = window.open('mypage.html', '_blank', 'location=no');
inApp.addEventListener('loadstop', function(){
inApp.insertCSS({
file: 'inAppStyle.css'
},onSuccess);
});
已编辑
将此路径用于您的 android 元素 file:///android_asset/{您的文件夹
}
信息:https://github.com/apache/cordova-plugin-file/blob/master/doc/index.md#android-file-system-layout
关于css - 手机间隙 : InAppBrowser insertCSS file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24098838/