如何检测何时使用javascript动态注入了多个样式表
How to detect when multiple stylesheets have been dynamically injected with javascript
我有以下函数,当相应的HTML也被注入到页面中时,它会动态加载到样式表中。
这一切都很好。注入的html是隐藏的,一旦它的样式表被加载,它就被设置为可见。
function _addCssFile(filename, fragment) {
var stylesheet = doc.createElement("link");
stylesheet.setAttribute("rel", "stylesheet");
stylesheet.setAttribute("type", "text/css");
stylesheet.setAttribute("href", filename);
doc.getElementsByTagName("head")[0].appendChild(stylesheet);
stylesheet.onload = function(){
fragment.setAttribute("style", "visibility:visible;");
}
}
然而,html的一部分可能有多个css文件要注入,所以我需要能够检测数组中的所有css文件何时成功注入DOM。
上面的函数为每个包含的css文件运行,一旦注入了整个样式表数组,我将如何启动事件?正如您所看到的,注入的html当前将被设置为对于第一个加载的样式表可见,并且对于随后的每个文件都可见。
有一个计数器。对于添加的每个CSS文件,递增计数器。对于每个加载的CSS文件,将其递减。如果在添加了所有CSS文件后计数器达到零,则它们都已加载。
相关文章:
- 当从Chrome扩展动态注入JS时,从onload()内部调用方法
- 性能:动态脚本注入与服务器渲染脚本
- 动态注入javascript文件-为什么大多数示例都附加到头上
- chrome扩展在加载dom之前注入动态css
- 如何将动态html与注入角度引导popover的指令一起使用
- 动态注入SVG过滤器并应用于HTML
- 在JavaScript中,如何等待动态注入的脚本在开始使用之前加载
- 如何检测何时使用javascript动态注入了多个样式表
- 按下按钮时动态注入脚本
- Angular ui-router 解析中的动态依赖注入
- 动态注入时保存文本区域值的夏季注释问题
- jQuery文档是否准备好等待通过Backbone动态注入的html元素
- 在 Angular 中动态注入依赖模块
- 在通过AJAX加载的DOM中运行动态注入的javascript(尝试使用历史记录ajax化网站.js)
- 有没有办法将 css 文件或 javascript 文件动态注入 HTML 文档的 head 标签中
- 如何将外部输入动态注入 SlimerJS 脚本
- 如何将数据库中的 html 标签注入到我的指令的模板中,实际上是动态定义模板的根元素/标签
- 使用DOM注入动态预取资源是否有效或有意义
- 向文档注入动态CSS
- 注入动态脚本,每个选项卡onLoad在Safari扩展