大家好,

我只是想创建一个插件,我需要它对用户友好,因此我希望在加载插件时在用户页面的append部分上对<link/>标记head进行编码。它可以与所有其他浏览器(不确定IE9,IE7和IE6)配合使用,但不适用于IE8!
我的插件没什么问题,所以我只创建了一个示例页面并遇到了类似的问题!这是我的测试页HTML + jQuery代码------

<html>
       <head>
              <script src="../jquery-1.6.min.js"></script>
              <script>
                       $(document).ready(function () {
                          $(document.head).append('<link rel="stylesheet" type="text/css" href="style.css" />');
                       });
              </script>
       </head>
       <body>
              <h1>Text!</h1>
       </body>
</html>

这是我的CSS代码-----
body {
 background:#ddd;
}
h1 {
 color: #789;
}

那么谁能告诉我我要去哪里错了,或者这是一生的问题吗?

致谢

在看到第一个注释并转到提供的链接后,我刚刚创建了此示例代码,发现了一些惊人的东西!看这个~~~
<html>
       <head>
              <script src="../jquery-1.6.min.js"></script>
              <script>
                       $(document).ready(function () {
                          if (document.getElementsByTagName('head')[0] === document.head) {
                           $("head").append('<link rel="stylesheet" type="text/css" href="style.css" />');
                          }else {
                           alert('This doesn\'t supports head appending!');
                          }
                       });
              </script>
       </head>
       <body>
              <h1>Text!</h1>
       </body>
</html>

在使用IE8浏览器执行此页面时,我收到以下消息:
This doesn't supports head appending!

好吧,我不是我的浏览器有什么问题,或者这是IE8的问题吗?

最佳答案

if (document.createStyleSheet)
{
    document.createStyleSheet("style.css");
}
else
{
    $("head")
       .append('<link rel="stylesheet" type="text/css" href="style.css" />');
}

10-07 19:59
查看更多