我正在将电子应用中的javascript(预加载javascript文件)注入webview,以修改webview中内容的一些CSS,但似乎没有办法在webview中加载CSS文件。
有谁知道如何在Electron中将CSS文件加载到webview中?所以我可以使用预加载的javascript来修改webview中的DOM元素。
尝试1:
我尝试从这样的预加载脚本中加载CSS文件(注入CSS文件),但remote.getGlobal('dirPath')}
部分将附加到当前webview的src
网址上,所以(即{{1} })
我目前的解决方案: 但是我发现了一种通过预加载的javascript文件注入css的方法。
https://stackoverflow.com/User/path/to/my/app/directory/public/css/inject.cs
参考文献: http://electron.atom.io/docs/api/webview-tag/
if (!document.getElementById(cssId)) {
var head = document.getElementsByTagName('head')[0];
var sty = document.createElement('style');
sty.type = 'text/css';
var css = '.your_css_class { background: red }'; // You can compress all css files you need and put here
if (sty.styleSheet){
sty.styleSheet.cssText = css;
} else {
sty.appendChild(document.createTextNode(css));
}
head.appendChild(sty);
}
不允许加载多个文件(我已经用它来加载javascript文件):
How to preload multiple js in electron webview