// -> hasClass: 验证当前元素中是否包含className这个样式类名
function hasClass(curEle, className) {
var reg = new RegExp("(^| +)" + className + "( +|$)");
return reg.test(curEle.className);
}
// -> addClass: 给元素增加样式类型
function addClass(curEle, className) {
var ary = className.split(/\s+/g);
// -> 循环数组,一项一项的验证
for (var i = 0, len = ary.length; i < len; i++) {
var curName = ary[i];
if (!hasClass(curEle, curName)) {
curEle.className += ' ' + curName;
}
}
}
// -> removeClass: 给元素移除样式类型
function removeClass(curEle, className) {
var ary = className.split(/\s+/g);
for (var i = 0, len = ary.length; i < len; i++) {
var curName = ary[i];
if (hasClass(curEle, curName)) {
var reg = new RegExp("(^| +)" + curName + "( +|$)", "g");
curEle.className = curEle.className.replace(reg, ' ');
}
}
}
封装: addClass()-removeClass()
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- RxTools 工欲善其事必先利其器! Android开发过程经常需要用到各式各样的工具类,虽然大部分只需谷歌/百...
- 这之前写过一篇《AFN3.0以上版本的二次封装》,主要为当时公司的项目服务,写的针对性比较强。做过几个不同的项目后...
- 我们在做开发时经常会自定义一些view,并且如果如果该view比较复杂或者经常被调用到,我们就可以将该view单独...