封装addClass 、 removeClass
<script>
window.onload = function()
{
var oDiv = document.getElementById('div1');
var oDiv2 = document.getElementById('div2'); addClass(oDiv,'box1');
removeClass(oDiv2,'box'); function addClass(obj,className)
{
//如果原来没有Class
if(obj.className == ''){
obj.className = className;
} else{
//如果原来有class
var arrClassName = obj.className.split(' ');
var _index = arrIndexOf(arrClassName,className);
if(_index == -1)
{
//如果要添加的class在原来的class中不存在
obj.className += ' ' + className;
}
//如果要添加的class在原来的class中存在
}
};
function removeClass(obj,className)
{
//如果原来有class
if(obj.className !='')
{
var arrClassName = obj.className.split(' ');
var _index = arrIndexOf(arrClassName,className);
//如果有我要移除的class
if(_index != -1)
{
arrClassName.splice(_index,1);
obj.className = arrClassName.join(' ');
}
}
//如果原来没有class就什么都不做
};
function arrIndexOf(arr,v)
{
for(var i=0;i<arr.length;i++)
{
if(arr[i] == v)
{
return i;
}
}
return -1;
};
};
</script> <body>
<div id="div1" class="box">aaaa</div>
<div id="div2" class="box">bbb</div>
</body>
封装addClass 、 removeClass的更多相关文章
- 原生JavaScript实现的addclass,removeclass,hasclass,toggleclass,getbyclass
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- jQuery addClass removeClass toggleClass hasClass is(.class)用法
jQuery addClass removeClass toggleClass hasClass is(.class)用法 <%@ page language="java" ...
- jQuery的addClass,removeClass和toggleClass方法
jQuery的addClass,removeClass和toggleClass方法,最后一个方法在某一情形之下,可以替代前面2个方法. 第一个方法addClass为元素添加一个class. 第二个方法 ...
- jquery 对svg 元素的addClass removeClass 支持
jquery 2.2 之后才支持对svg 元素的addClass removeClass
- JS封装addClass、removeClass
addClass封装:1.先把原有的类名和需要添加的类名用“”切割.拼接. 2.查重,把所有类名遍历,重复的去掉. 3.“”拼接. function addClass(ele , cName) { v ...
- addClass, removeClass, toggleClass(从jquery中抠出来)
<div id="d3" class="cur"></div> var mylibs = (function(){ var rtrim ...
- hasClass addClass removeClass
//函数有class function hasClass(ele,cls){ return -1<(" "+ele.className+" ").inde ...
- 原生js实现addClass,removeClass,hasClass方法
function hasClass(elem, cls) { cls = cls || ''; if (cls.replace(/\s/g, '').length == 0) return false ...
- ul li span addClass removeClass
<link type="text/css" href="./style/css/base.css" rel="stylesheet"& ...
随机推荐
- 【Codeforces 947A】 Primal Sport
[题目链接] 点击打开链接 [算法] 不难看出,x1的范围是[x2-P(x2)+1,x2],x0的范围是[x1-P(x1)+1,x1] 我们可以先做一遍线性筛,然后暴力就可以了 [代码] #inclu ...
- 【总结——HTTP协议】
一.HTTP协议简介 什么是HTTP?全称是HyperText Transfer Protocal,即:超文本传输协议,从1990年开始就在WWW上广泛应用,是现今在WWW上应用最多的协议,目前版本是 ...
- 6-12 SVM小结
介绍了SVM的概念以及如何利用SVM进行一个身高体重的训练和预测.如果类别比较简单的话,那么在二维空间上它有可能就是一条直线.如果类别比较复杂,那么投影到高维空间上它就是一个超平面.所以SVM的本质它 ...
- 洛谷 - P1034 - 矩形覆盖 - dfs
https://www.luogu.org/problemnew/show/P1034 可能是数据太水了瞎搞都可以过. 判断两个平行于坐标轴的矩形相交(含顶点与边相交)的代码一并附上. 记得这里的xy ...
- UVALive 6833【模拟】
题意: 算从左往右的值,先乘后加的值,数的范围<=9= =,然后根据满足的条件输出字符. 思路: 从左往右就是直接来了,先做乘法就是乘法两边的数字靠向右边那个,且左边那个为0,然后所有值一加就好 ...
- 2016 Multi-University Training Contest 1 GCD【RMQ+二分】
因为那时候没怎么补所以就分到了未搞分组里!!!然后因为标题如此之屌吧= =点击量很高,然后写的是无思路,23333,估计看题人真的是觉得博主就是个撒缺.废话不多说了,补题... update////2 ...
- 【弱的C艹之路。。未完待续】
[弱的C艹之路] 数据范围 unsigned int 0-4294967295 int 2147483648-2147483647 unsigned long 0-4294967295 long 21 ...
- hdoj4180
题意: 使(a/b-c/d)最小,然后让你求c/d. 我们能说最小the error |A/B - C/D| 然后C,D的范围是 0 < C < D < B. 其实就是:求接近(A/ ...
- python 可迭代对象与迭代器之间的转换
列表: >>> l = [1, 2, 3, 4] >>> l_iter = iter(l) >>> l_iter <list_iterato ...
- Django学习:模板语法
一.什么是模板? 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法分类 一.模板语法之变量:语法为 {{ }}: 在 Django 模板中遍历复杂数据结构的关键 ...