大家好,
我只是想创建一个插件,我需要它对用户友好,因此我希望在加载插件时在用户页面的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" />');
}