尝试使用javascript(IE8中的innerHTML)添加样式标签

前端之家收集整理的这篇文章主要介绍了尝试使用javascript(IE8中的innerHTML)添加样式标签前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这在IE8中不起作用.我认为这是导致问题的inner HTML.如何解决
// jQuery plugin
(function( $){

    $.fn.someThing = function( options ) {  

        var d = document,someThingStyles = d.createElement('style');

        someThingStyles.setAttribute('type','text/css');
        someThingStyles.innerHTML = " \
        .some_class {overflow:hidden} \
        .some_class > div {width:100%;height:100%;} \
        ";
        d.getElementsByTagName('head')[0].appendChild(someThingStyles);

        });

    };

})( jQuery );

解决方法

jQuery的

由于您已经在使用jQuery,请使用:

$('<style type="text/css">' + 
   '.some_class {overflow:hidden}' +
    '.some_class > div {width:100%;height:100%;}' +
    '</style>').appendTo('head');

纯JavaScript

如果你不想使用jQuery,你必须首先附加< style>元素,然后使用style.styleSheet.cssText属性(IE-only !!).

var d = document,someThingStyles = d.createElement('style');
d.getElementsByTagName('head')[0].appendChild(someThingStyles);
someThingStyles.setAttribute('type','text/css');

someThingStyles.styleSheet.cssText = " \
.some_class {overflow:hidden} \
.some_class > div {width:100%;height:100%;} \
";

猜你在找的JavaScript相关文章