动态修改css文件中,具体的class中的个别属性值。
function setStyleSheetObjCssClassProperty(pStyleSheetObj, pSelectorText, pProperty, pValue) {
var pStyleSheet = pStyleSheetObj.sheet;
setSpecificStyleSheetCssClassProperty(pStyleSheet, pSelectorText, pProperty, pValue);
}
//修改class的属性值
//javascript方式
function setSpecificStyleSheetCssClassProperty(pStyleSheet, pSelectorText, pProperty, pValue) {
var rules = pStyleSheet.cssRules;
var rule;
var selectorText;
for (i = 0; i < rules.length; i++) {
rule = rules[i];
selectorText = rule.selectorText;
if (selectorText == null || selectorText == "") {
continue;
}
else if (selectorText === pSelectorText) {
rule.style.setProperty(pProperty, pValue);
return;
}
//else if (selectorText.indexOf(pSelectorText + ",") > 0) {
// rule.style.setProperty(pProperty, pValue);
//}
}
}
//修改class的属性值
//javascript方式
function setCssClassProperty(pSelectorText, pProperty, pValue) {
var pSheetObjs = document.styleSheets;
for (j = 0; j < pSheetObjs.length; j++) {
setSpecificStyleSheetCssClassProperty(pSheetObjs[j], pSelectorText, pProperty, pValue);
}
使用例子如下:
var sheetObj=$("#linkSource")[0];
setStyleSheetObjCssClassProperty(sheetObj,"pSelectorText","background","green");
setCssClassProperty("pSelectorText","background","green");
修改后的效果的生命期:从修改开始直到CSS文件重新加载, 所以,如果有其他的特殊的使用的情况,相应的重新执行一次就好了。
//删除stylesheet中的某一个rule
function deleteRule(sheet, ruleName) {
for (i = 0; i < sheet.rules.length; i++) {
var rule = sheet.rules[i];
if (rule.selectorText.toLowerCase() == ruleName.toLowerCase()) {
if (sheet.deleteRule) {
sheet.deleteRule(i);
}
if (sheet.removeRule) {
sheet.removeRule(i);
}
}
}
}
//stylesheet中的添加一个rule
function addRule(sheet, ruleName) {
if (sheet.addRule) {
sheet.addRule(ruleName, null, 0);
}
if (sheet.insertRule) {
sheet.insertRule(ruleName + ' { }', 0);
}
}
动态修改css文件中,具体的class中的个别属性值。的更多相关文章
- ASP.NET中直接用C# 动态修改CSS样式
ASP.NET中直接用C# 动态修改CSS样式 wonsoft (wonsoft@163.com) 使用JavaScript控制CSS样式有点麻烦,还是觉得直接使用C#操作更方便快捷,本文通过两个B ...
- 使用java中的反射获得object对象的属性值
知识点:使用java中的反射获得object对象的属性值 一:场景 这两天开发代码时,调用别人的后台接口,返回值为Object对象(json形式的),我想获得object中指定的属性值,没有对应的ge ...
- maven 根据P参数值打包动态修改properties文件中值或一定properties
需求:由于最近开发clover项目 ,没有使用spring,更没有使用任何框架,而使用J2EE的web工程,所以连接ZK和MongoDB.Redis等服务器需用指定properties文件, 而目前公 ...
- PHP修改css文件中的背景图片并下载到本地
扒网站当中一般css中的图片扒不下来,这个脚本就是用来下载这些图片到本地的 流程 1.获取css文件路径 2.打开文件逐行读取判断是否包含需要的图片 2.1 包含则 -进行截取直接获取到相对路径 2. ...
- JavaScript动态修改CSS
链接:https://www.cnblogs.com/aademeng/articles/6279060.html 在很多情况下,都需要对网页上元素的样式进行动态的修改.在JavaScript中提供几 ...
- javascript 动态修改css样式方法汇总(四种方法)
在很多情况下,都需要对网页上元素的样式进行动态的修改.在JavaScript中提供几种方式动态的修改样式,下面将介绍方法的使用.效果.以及缺陷. 1.使用obj.className来修改样式表的类名. ...
- Intellij Idea修改css文件即时更新生成效果
用来Idea也有一段时间了,觉得还是有很多地方没有用到,今天遇到了一个问题,百度了解决方法,正好在这里做一个小记录 主要问题是我在idea的项目里面修改了css文件,然后运行web文件,发现并没有做到 ...
- 通过修改css文件来观察openerp表单中的col和colspan
适用版本 openerp 6.1.1 问题的提出 在openerp的表单定义中, 要使用 colspan和col 指你定各个元素的占位, 前者说明了本元素占据其所在容器的列数, 后者说明了本元素作为容 ...
- js 获取手机浏览器类型,修改css文件的class的值
/*========================================= 函数功能:获取浏览器类型 =========================================*/ ...
随机推荐
- TCP连接的TIME_WAIT和CLOSE_WAIT 状态解说
相信很多运维工程师遇到过这样一个情形: 用户反馈网站访问巨慢, 网络延迟等问题, 然后就迫切地登录服务器,终端输入命令"netstat -anp | grep TIME_WAIT | wc ...
- java的构造方法链
转自:http://blog.csdn.net/Mr_KkTian/article/details/70226561 1.简介 构造一个类的实例时, 将会调用沿着继承链的所有父类的构造方法. 当构造一 ...
- Mac添加命令别名
1. 切换到用户主目录 $ cd 2. 编辑或新建.bash_profile文件 3. 添加别名 命令别名设置语法: alias [别名]='[指令名称]' 注意:等号两边均无空格,指令名称中如有空格 ...
- CAlayer二
下面学习一下图层的anchorPoint,position属性在ViewDidLoad中self.View添加View1,在View1中添加图层calayer self.view1=[[UIView ...
- Quoit Design(hdu1007)最近点对问题。模版哦!
Quoit Design Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- 绘图:Matplotlib
用于绘制一些数据图,同学推荐的,挺好用.非常好的官网文档:http://matplotlib.org/contents.html 0. 安装 可以直接pip install,还有一些依赖就按照提示来吧 ...
- nodejs 知识总结
作者QQ:1095737364 QQ群:123300273 欢迎加入! 1.添加模块:保存到package.json文件中; # npm install vue --save 注意 ...
- 【代码笔记】iOS-自定义alertView
一,效果图. 二,代码. ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewContro ...
- 【代码笔记】iOS-removeFromSuper
代码: RootViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after ...
- 【读书笔记】iOS-网络-理解错误源
考虑一个字节是如何从设备发往运程服务器以及如何从远程服务器将这个字节接收到设备,这个过程只需要几百毫秒时间,不过确要求网络设备都能正常工作才行.设备网络和网络互联的复杂性导致了分层网络的产生.分层网络 ...