我让用户更新其可自定义小部件的样式,方法是为他们提供一个可编辑的文本区域,其中包含更新<style>
元素onchange
的 CSS 代码。
.JS:
function updateWidgetStyling() {
$("#stylePreview").html( $('#WidgetviewCustomCSS').val() );
}
.HTML:
<style id="stylePreview">
...
</style>
<textarea name="data[Widgetview][customCSS]" cols="30" rows="6"
onchange="updateWidgetStyling()" id="WidgetviewCustomCSS">...</textarea>
这适用于Chrome,Firefox和IE9,但不适用于IE7。
知道如何让它在那里工作吗?这很不幸,但我们是B2B,需要IE7支持。
提前谢谢。
不要更新样式表,而是将其从 DOM 中删除并插入一个新样式表。这应该会触发页面的完全重新呈现。