这适用于 FF Safari 和 chrome,但在 IE8 中导致错误
var styleText = "#" + containerElement.id + " button {background-color:" + options.bg_color + ";}";
styleText += "#" + containerElement.id + " button.not-open {color:" + options.txt_color + ";}";
styleText += "#" + containerElement.id + " button.not-open:hover {color:" + options.hvr_color + ";}";
styleText += ".info_pane {background-color:" + options.bg_color + ";}";
styleText += ".info_pane {color:" + options.txt_color + ";}";
styleText += ".info_pane a {color:" + options.txt_color + ";}";
var style = document.createElement('style');
style.type = 'text/css';
style.innerHTML = styleText;
innerHTML 是引发错误的原因。做这项工作的最佳选择是什么?我环顾四周,我发现的大多数东西似乎有点不稳定
最佳答案
请尝试使用 cssText
属性。 style.cssText = styleText;
编辑:显然,那将是 style.styleSheet.cssText = styleText;
。我的错。
DEMO
关于html - 样式元素上的 innerHTML 导致运行时错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13369408/