让IE10等支持classList2.0(转)

chrome24+, firesfox26+起支持classList2.0,即让它同时添加或删除多个类名, toggle方法支持第2个参数,用于强制添加或删除

var div = document.createElement("div");
div.classList.add("a", "b");
if (div.className !== "a b" && window.DOMTokenList) {
    var _add = DOMTokenList.prototype.add;
    DOMTokenList.prototype.add = function() {
        for (var i in arguments) {
            _add.call(this, arguments[i]);
        }
    };
    var _remove = DOMTokenList.prototype.remove;
    DOMTokenList.prototype.remove = function() {
        for (var i in arguments) {
            _remove.call(this, arguments[i]);
        }
    };
    DOMTokenList.prototype.toggle = function(token, forse) {
        token += "";
        var
                result = this.contains(token) , method = result ?
                forse !== true && "remove"  : forse !== false && "add";
        if (method) {
            this[method](token);
        }
        return !result;
    };
}

div.className = "";

div.classList.add("aaa", "ccc");

alert(div.className);

时间: 2024-10-12 18:01:42

让IE10等支持classList2.0(转)的相关文章

让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法转

让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法 最近做一个Web网站,之前一直觉得bootstrap非常好,这次使用了bootstrap3,在chrome,firefox,safari,opera,360浏览器(极速模式).搜狗浏览器等浏览器下均没有问题,而在IE8及IE11下发现样式无法显示,然后各种百度啊,最后在 雅朋网 的一个网友帖子的帮助下解决了问题,也参考了 千寻学习网 的资料,先将解决方法总结如下: 首先需要确保你的HTML页面开始部分要有DOC

转载------让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法

本文是转载及收藏 让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法 最近做一个Web网站,之前一直觉得bootstrap非常好,这次使用了bootstrap3,在chrome,firefox,safari,opera,360浏览器(极速模式).搜狗浏览器等浏览器下均没有问题,而在IE8及IE11下发现样式无法显示,然后各种百度啊,最后在 雅朋网 的一个网友帖子的帮助下解决了问题,也参考了 千寻学习网 的资料,先将解决方法总结如下: 首先需要确保你的HTML页面

iis6下配置支持.net4.0&发布网站[转]

iis6配置支持.net4.0 在win2003操作系统上发布两个网站,首先配置iis: 1.下载 .net framework 4.0   差不多48MB 2.安装 3.打开iis: 开始=>管理工具=>Internet 信息服务(IIS)管理器 4.点击管理器中的“web服务扩展”,刚刚安装的.net framework 4.0 就会出现在右边,选择并允许 这样就配置好了 有时还要同时配置.net framework 3.5和.net framework 4.0 才可以,那就再配置一次3.

重写lucene.net的分词器支持3.0.3.0版本

lucene.net中每个分词器都是一个类,同时有一个辅助类,这个辅助类完成分词的大部分逻辑.分词类以Analyzer结尾,辅助类通常以Tokenizer结尾.分类词全部继承自Analyzer类,辅助类通常也会继承某个类. 首先在Analysis文件夹下建立两个类,EasyAnalyzer和EasyTokenizer. 1 using Lucene.Net.Analysis; 2 using System.IO; 3 4 namespace LuceneNetTest 5 { 6 public

项目支持Servlet3.0的新特性

一.Servlet3.0介绍 Servlet3.0是Java EE6规范的一部分,Servlet3.0提供了注解(annotation),使得不再需要在web.xml文件中进行Servlet的部署描述,简化开发流程. 二.开发Servlet3.0程序的所需要的环境 开发Servlet3.0的程序需要一定的环境支持.MyEclipse10和Tomcat7都提供了对Java EE6规范的支持.Tomcat需要Tomcat7才支持Java EE6,Tomcat7需要使用JDK1.6以上的版本. 所以开

IOS 实现自定义的导航栏背景以及自定义颜色的状态栏(支持7.0以及低版本)

为尊重文章原作者,转载务必注明原文地址:http://www.cnblogs.com/wt616/p/3784717.html 先看效果图: 在自定义导航栏背景时,可能会遇到以下一些问题: 1.当设置导航栏背景后,状态栏的颜色也会跟着一起改变掉,这可能不是你说希望看到的 2.IOS7以上的版本和低版本显示出来的导航栏高度位置有差别,这个差别就是状态栏的高度20,为了兼容低版本,必须统一 解决思路: 1.不正常的是状态栏的背景也一起变了,而状态栏的文字是可以通过其他API去设置的:如 [[UIAp

WinForm皮肤 支持.NET4.0 IrisSkin4多彩皮肤演示和下载

IrisSkin4是一款.NET平台非常优秀的Winform皮肤,链接库文件仅544kb,使用方法也非常简单 IrisSkin4(IrisSkin4.dll + 73套皮肤)[下载地址] 使用方法: //仅在首个窗体中添加此代码即可实现所有窗体皮肤 new Sunisoft.IrisSkin.SkinEngine().SkinFile ="skins/MacOS.ssk"; 效果图如下: [Dome源码及IrisSkin4打包下载] WinForm皮肤 支持.NET4.0 IrisSk

免费SSL证书(支持1.0、1.1、1.2)

由于公司要开发微信小程序,而微信小程序的接口需要https协议的,并且要支持TLS1.0.TLS1.1.TLS1.2.如果仅仅是为了开发小程序,安全等级又不用太高,可以选择免费的SSL证书 在这里选择腾讯云的证书,申请在 https://console.qcloud.com/ssl 腾讯云里有详细的帮助与文档  https://www.qcloud.com/document/product/400/6814 根据腾讯云的帮助文档去申请安装验证,基本是没什么问题的 安装成功后,使用 https:/

libgdx, 你的显卡驱动支持openGL2.0吗

使用openGL2.x的api时,你的显卡驱动要支持才行.如果没装驱动,你的显卡可能只支持openGL1.x. 使用什么工具查看openGL的支持情况?--使用"EVEREST_Ultimate_Edition_5.50_Build_2253_Beta",你可以在baidu查找它. 看看下图, libgdx, 你的显卡驱动支持openGL2.0吗