首页 > Web开发 > 详细

网站页面全局变黑白灰(支持IE10,11及chorme,Opera,Firefox主流浏览器 )

时间:2020-04-03 22:31:42      阅读:112      评论:0      收藏:0      [点我收藏+]

使用css支持chrome、Opera、Firefox浏览器,对于IE10、11采用JS脚本处理,需要使用JQuery,需要在网站全局变黑白需要在网站的全局模板页中实现下面的样式和代码

 

CSS样式部分:

<style type="text/css">

body,div,span,p,img{

-webkit-filter: grayscale(100%); /* webkit */

-moz-filter: grayscale(100%) !important; /*firefox*/

/*-ms-filter: grayscale(100%); ie9*/

-o-filter: grayscale(100%)!important; /*opera*/

filter: grayscale(100%);

filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); 

filter:gray; /*ie9- */      

}    

</style>

 

JQuery脚本代码:

<script>
var exports = {
    grayscale: function(image) {
        var self = this;

        // 检测是否支持标准滤镜
        var isUnsupport = (function() {

            if (document.msHidden != ‘undefined‘) {
                var div = document.createElement(‘div‘), value = ‘grayscale(100%)‘;
                div.style.filter = value;

                return window.getComputedStyle(div).filter !== value;
            }
        })();

if (image && isUnsupport == true) {
            if (image.length > 0) {
                if (image.each) {
                    image.each(function() {
                        self.grayscale(this);
                    });
                } else if (image.forEach) {
                    image.forEach(function(img) {
                        self.grayscale(img);
                    });
                }
            } else if (/img/i.test(image.tagName)) {
                // 载入SVG滤镜
                if (!document.grayscale) {
                    document.body.insertAdjacentHTML(‘afterBegin‘, ‘<svg version="1.1" xmlns="http://www.w3.org/2000/svg" class="dn">                <filter id="grayscale">                    <feColorMatrix type="matrix" values="0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0"/>                </filter>            </svg>);
                    document.grayscale = true;
                }

                // 图片变SVG
                var cl = image.className, src = image.src;
                // 尺寸
                var width = image.clientWidth, height = image.clientHeight;

                if (!image.grayscale) {
                    image.insertAdjacentHTML(‘beforeBegin‘, ‘<svg class="‘+ cl +‘"><image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="‘+ src 

+‘" x="0" y="0" width="‘+ width +‘" height="‘+ height +‘" filter="url(\‘#grayscale\‘)"></image></svg>‘);
                }
            } 

            return this;
        }

}

}
grayscale();
</script>

 

网站页面全局变黑白灰(支持IE10,11及chorme,Opera,Firefox主流浏览器 )

原文:https://www.cnblogs.com/dcrenl/p/12629154.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!