2015-02-09——js笔记
示例1:
增加样式表
示例代码:
function addStylesheet(url, media) {
var link = document.createElement('link');
link.setAttribute('rel', 'stylesheet');
link.setAttribute('type', 'text/css');
link.setAttribute('meida', media);
link.setAttribute('href', url);
document.getElementsByTagName('head')[0].appendChild(link);
}
示例2:
获取样式表
示例代码:
function getStylesheet(url, media) {
var sheets = [];
for (var i = 0; i < document.styleSheets.length; i++) {
if (url && document.styleSheets[i].href.indexOf(url) === -1 ) {
continue;
}
if (media) {
var sheetMedia;
if (document.styleSheets[i].media.mediaText) {
sheetMedia = document.styleSheets[i].media.mediaText;
} else {
sheetMedia = document.styleSheets[i].media;
}
if (media !== sheetMedia) {
continue;
}
}
sheets.push(document.styleSheets[i]);
}
}
示例3:
删除样式表
示例代码:
function removeStylesheet(url, media) {
var sheets = getStylesheet(url, media);
for (var i = 0; i < sheets.length; i++) {
var node = sheets[i].ownerNode || sheets[i].owningElement;
sheets[i].disabled = true;
node.parentNode.removeChild(node);
}
}
示例4:
增加一条CSS规则
示例代码:
function addCssRule(selector, styles, index, url, meida) {
var declaration = '';
for (property in styles) {
if (!styles.hasOwnProperty(property)) {
continue;
}
declaration += property + ':' + styles[property] + ';';
}
var styleSheets = (typeof url === 'array') ? url : getStylesheet(url, media);
var newIndex;
for (var i = 0; i < styleSheets.length; i++) {
if (styleSheets[i].insertRule) {//DOM2
newIndex = index > 0 ? index : styleSheets[i].cssRules;
styleSheets[i].insertRule(selector + '{' + declaration + '}', newIndex);
} else if (styleSheets[i].addRule) {//MSIE
newIndex = index >= 0 ? index : -1;
styleSheets[i].addRule(selector, declaration, newIndex);
}
}
}
示例5:
编辑一条css规则
示例代码:
function editCssRule(selector, styles, url, media) {
var styleSheets = (typeof url === 'array') ? url : getStylesheet(url, media);
for (var i = 0; i < styleSheets.length; i++) {
var rules = styleSheets[i].cssRules || styleSheets[i].rules;
selector = selector.toUpperCase();
for (var j = 0; j < rules.length; j++) {
if (rules[j].selectorText.toUpperCase() === selector ) {
for (property in styles) {
if (!styles.hasOwnProperty(property)) {
continue;
}
rules[j].style[camelize(property)] = styles[property];
}
}
}
}
}
2015-02-09——js笔记的更多相关文章
- 02: vue.js常用指令
目录:Vue其他篇 01: vue.js安装 02: vue.js常用指令 目录: 1.1 vuejs简介 1.2 选择器:根据id.class等查找 1.3 静态绑定数据 data 1.4 插值 { ...
- Data Visualization and D3.js 笔记(1)
课程地址: https://classroom.udacity.com/courses/ud507 什么是数据可视化? 高效传达一个故事/概念,探索数据的pattern 通过颜色.尺寸.形式在视觉上表 ...
- js笔记-0
#js笔记-0 数组: indexOf方法: Array也可以通过indexOf()来搜索一个指定的元素的位置: var arr = [10, 20, '30', 'xyz']; arr.indexO ...
- Node.js 笔记02
一.关于命令 常用命令: dir 列出当前目录下面所有的文件 cd 目录名 进入到指定的目录,. 当前目录, .. 进入上级目录,cd . 当前目录, cd .. 上级目录 md 目录名 创建文件夹 ...
- 2015年10月23日JS笔记
ECMAScript标准:JavaScript核心语法 微软:Jscript ECMAScript标准:一纸空文 JavaScript和JScritp都号称完全实现了 ECMAScript标准 W3C ...
- JS笔记—02
1.String截取:substr:截几位, substring:截到哪. 2.String的操作,例如变大写,小写,本身不会变,只是在栈里交换引用似的 var str = "hello w ...
- iOS 学习笔记 二 (2015.02.26)
How To Use Git Source Control with Xcode in iOS 6 If you're new here, you may want to subscribe to m ...
- iOS 学习笔记 一 (2015.02.05)
一:Xcode6输入框设置为 keyboard type设置为Number Pad弹不出键盘的解决办法 问题:Can't find keyplane that supports type 4 fo ...
- vue.js及项目实战[笔记]— 02 vue.js基础
一. 基础 1. 注册全局组件 应用场景:多出使用的公共性能组件,就可以注册成全局组件,减少冗余代码 全局APIVue.component('组件名','组件对象') 2.附加功能:过滤器&监 ...
- 02 Node.js学习笔记之http服务
在Node中可以非常轻松的构建一个Web服务器,在Node中提供了一个http模块,这个模块主要功能就是帮助你创建一个Web服务器. 创建步骤: //1.加载http模块 var http=requi ...
随机推荐
- mysql 5.6的安装
MySQL安装 yum install -y perl-Module-Install.noarch cd /usr/local/src wget http://mirrors.sohu.com/m ...
- 调用getChildFragmentManager时出现的Bug
异常: java.lang.IllegalStateException: Activity has been destroyed at android.support.v4.app.FragmentM ...
- Intellj IDEA14.0.2启动异常之3分钟修复
今天是周一,刚到公司启动心爱的IDEA,,突然启动到一半,就抛异常了,直接弹窗,报例如以下的异常: java.lang.RuntimeException: com.intellij.ide.plugi ...
- MapReduce源码分析之作业Job状态机解析(一)简介与正常流程浅析
作业Job状态机维护了MapReduce作业的整个生命周期,即从提交到运行结束的整个过程.Job状态机被封装在JobImpl中,其主要包括14种状态和19种导致状态发生的事件. 作业Job的全部状态维 ...
- mysql日期函数 和sql语句扩展information_schema show processlist;
SELECT NOW(); SELECT CURDATE(); SELECT YEAR(NOW()) SELECT CONCAT("mysqldump ","-uroot ...
- 回调函数(callback)是什么?
你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货.在这个例子里,你的电话号码就叫回调函数,你把电话留给 ...
- 探讨把一个元素从它所在的div 拖动到另一个div内的实现方法
故事背景: 接到一个新需求,要求用vue搞,主要是拖动实现布局,关键点有:单个组件拖动,一行多列里面的组件拖动, 单个组件可以拖入一行多列里, 单个组件的拖动好实现,关键是把一个组件拖动到另一个类似 ...
- ios --图片文字组合头像那点事
/** 图片文字组合头像那点事 @param string 昵称 @param imageSize 图片尺寸 @param imageColor 图片颜色 @return 返回的 图片 */ + (U ...
- Uva1025 A Spy in the Metro
#include <iostream> #include <cstring> #include <cstdio> using namespace std; ]; ] ...
- 用js判断页面是否加载完成
这可以通过用document.onreadystatechange的方法来监听状态改变, 然后用document.readyState == “complete”判断是否加载完成. 可以采用2个div ...