动态添加样式表规则

转自 http://www.cnblogs.com/rubylouvre/archive/2009/07/14/1523104.html

 

有时我们需要在.js文件对文档动态引入一些CSS样式。对于一些短小的CSS代码来说

ddd.style.cssText = "border:1px solid red;color:#000;background:#444;float:left";

 

如果很长,我们可以动态导入一CSS文件。如

function addSheetFile(path){
var fileref=document.createElement("link")
fileref.rel = "stylesheet";
fileref.type = "text/css";
fileref.href = path;
fileref.media="screen";
var headobj = document.getElementsByTagName('head')[0];
headobj.appendChild(fileref);
}

 

几个相关的方法:

var getClass = function(ele) {
return ele.className.replace(/\s+/,' ').split(' ');
};
var hasClass = function(ele,cls) {
return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}
//更快的版本
var hasClass =function(ele,cls){
return -1 < (" "+ele.className+" ").indexOf(" "+cls+" ");
}
var addClass = function(ele,cls) {
if (!this.hasClass(ele,cls)) ele.className += " "+cls;
}
var removeClass = function(ele,cls) {
if (hasClass(ele,cls)) {
var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
ele.className=ele.className.replace(reg,' ');
}
}

转载于:https://www.cnblogs.com/huiKUANGKUANG/p/5104666.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值