Javascript动态创建 style 节点

爸7788

爸7788

2016-02-19 23:24

关注图老师设计创意栏目可以让大家能更好的了解电脑,知道有关于电脑的更多有趣教程,今天给大家分享Javascript动态创建 style 节点教程,希望对大家能有一点小小的帮助。

有很多提供动态创建 style 节点的方法,但是大多数都仅限于外部的 css 文件。如何能使用程序生成的字符串动态创建 style 节点,我搞了2个小时。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

静态外部 css 文件语法:

@import url(style.css);

动态外部 css 文件加载的方法有如下:

第一种:

var style = document.createElement(’link’);
style.href = ’style.css’;
style.rel = ’stylesheet’;
style.type = ‘text/css’;
document.getElementsByTagName(’HEAD’).item(0).appendChild(style);

第二种简单:

document.createStyleSheet(style.css);

动态的 style 节点,使用程序生成的字符串:

var style = document.createElement(’style’);
style.type = ‘text/css’;
style.innerHTML=body{ background-color:blue; };
document.getElementsByTagName(’HEAD’).item(0).appendChild(style);

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

很遗憾,上面的代码在 ff 里面成功,但是 ie 不支持。从老外论坛得到代码:

var sheet = document.createStyleSheet();
sheet.addRule(’body’,'background-color:red’);

成功,但是很麻烦,要把字符串拆开写,长一点的写死。

接着搜,在一个不知道什么国家的什么语言的 blog 上找到代码:

document.createStyleSheet(javascript:’body{background-color:blue;’);

成功,此人实在厉害,但是问题出来了,url 最大 255 个字符,长一点的就不行了,经过 SXPCrazy 提示,改成:

window.style=body{background-color:blue;;
document.createStyleSheet(javascript:style);

完美解决!!代码:

html
head
script
function blue(){
if(document.all){
window.style="body{background-color:blue;";
document.createStyleSheet("javascript:style");
}else{
var style = document.createElement('style');
style.type = 'text/css';
style.innerHTML="body{ background-color:blue }";
document.getElementsByTagName('HEAD').item(0).appendChild(style);
}
}
/script
/head
body
input type="button" value="blue" onclick="blue();"/
/body
/html

展开更多 50%)
分享

猜你喜欢

Javascript动态创建 style 节点

Web开发
Javascript动态创建 style 节点

javascript 动态改变层的Z-INDEX的代码style.zIndex

Web开发
javascript 动态改变层的Z-INDEX的代码style.zIndex

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Delphi动态创建树

编程语言 网络编程
Delphi动态创建树

JavaScript创建高级对象

Web开发
JavaScript创建高级对象

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

fckeditor用javascript创建

PHP
fckeditor用javascript创建

javascript下查找父节点的简单方法

Web开发
javascript下查找父节点的简单方法

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

cookie和dom操作调用样式表实现网页换肤

cookie和dom操作调用样式表实现网页换肤

CSS教程:了解熟悉css语法

CSS教程:了解熟悉css语法
下拉加载更多内容 ↓