IE中标签被视为一个特殊标签,不能访问其子元素,所以要使用stylesheet.cssText,使用try catch语句捕获IE抛出的错误,兼容 /** * IE中标签被视为一个特殊标签,不能访问其子元素, * 所以要
/** * IE中标签被视为一个特殊标签,不能访问其子元素, * 所以要使用stylesheet.cssText,使用try catch语句捕获IE抛出的错误,兼容 */ function loadCssCode(code){ var style = document.createElement('style'); style.type = 'text/css'; style.rel = 'stylesheet'; try{ //for Chrome Firefox Opera Safari style .appendChild(document.createTextNode(code)); }catch(ex){ //for IE style.styleSheet.cssText = code; } var head = document.getElementsByTagName('head')[0]; head.appendChild(style); } // 这种方式可以实时向页面添加样式,所以可以立即在页面上得意反应 loadCssCode('body{background-color:#f00}');