zoukankan      html  css  js  c++  java
  • js一个典型的对象写法,推荐使用这种格式,用于处理图像的基本方法、

    /* 常用对象 */
    //构造函数
    var ImageHelper = function() {}
    
    ImageHelper.prototype = {
        //根据让IE6的png图片背景变成透明(注意引用后可能会使图片布局改变)
        fixPNG: function(imgObj) {
            //<span style="display:inline-block; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='PNG图片的URL',sizingMethod='scale');span的宽即图片宽;height:span的高即图片高;"></span>
            var arVersion = navigator.appVersion.split("MSIE");
            var version = parseFloat(arVersion[1]);
            if ((version >= 5.5) && (version < 7) && (document.body.filters)) {
                var imgID = (imgObj.id) ? "id='" + imgObj.id + "' " : "";
                var imgClass = (imgObj.className) ? "class='" + imgObj.className + "' " : "";
                var imgTitle = (imgObj.title) ? "title='" + imgObj.title + "' " : "title='" + imgObj.alt + "' ";
                var imgStyle = "display:inline-block;" + imgObj.style.cssText;
                var strNewHTML = "<span " + imgID + imgClass + imgTitle + " style=\"" + "" + imgObj.width + "px; height:" + imgObj.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" + "(src=\'" + imgObj.src + "\', sizingMethod='scale');\"></span>";
                imgObj.outerHTML = strNewHTML;
            }
        },
        //让所有IE6下的所有PNG图片背景透明(注意引用后可能会使图片布局改变)
        correctPNG: function() {
            var arVersion = navigator.appVersion.split("MSIE");
            var version = parseFloat(arVersion[1]);
            if ((version >= 5.5) && (version < 7) && (document.body.filters)) {
                for (var j = 0; j < document.images.length; j++) {
                    var img = document.images[j];
                    var imgName = img.src.toUpperCase();
                    if (imgName.substring(imgName.length - 3, imgName.length) == "PNG") {
                        var imgID = (img.id) ? "id='" + img.id + "' " : "";
                        var imgClass = (img.className) ? "class='" + img.className + "' " : "";
                        var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' ";
                        var imgStyle = "display:inline-block;" + img.style.cssText;
                        var strNewHTML = "<span " + imgID + imgClass + imgTitle + " style=\"" + "" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
                        img.outerHTML = strNewHTML
                        j = j - 1;
                    }
                }
            }
        },
        /**
         * 自动缩放图片尺寸
         * ImgSource图片源(如URL)
         * ImgWidth要缩放的宽
         * ImgHeight要缩放的高
         * ImgToFit当图长宽都小于显示值时是否拉伸(true拉伸或false不拉伸)
         * 使用方法:原图的宽高最好也要写成缩放的大小<img src="***.jpg" width="180" height="110" onload="javascript:__Image__.drawImage(this,180,110,true);">
         */
        drawImage: function(ImgSource, ImgWidth, ImgHeight, ImgToFit) {
            var image = new Image();
            image.src = ImgSource.src;
            if (image.width > 0 && image.height > 0) {
                if ((image.width / image.height) >= (ImgWidth / ImgHeight)) {
                    if ((image.width > ImgWidth) || (image.width < ImgWidth && ImgToFit)) {
                        ImgSource.width = ImgWidth;
                        ImgSource.height = (image.height * ImgWidth) / image.width;
                    }
                } else {
                    if ((image.height > ImgHeight) || ((image.height < ImgHeight) && ImgToFit)) {
                        ImgSource.height = ImgHeight;
                        ImgSource.width = parseInt((image.width * ImgHeight) / image.height);
                    }
                }
            }
        }
    }
    var __Image__ = new ImageHelper(); //默认生成一个对象 

    有种高手写的感觉、

  • 相关阅读:
    怎么删除json 键值对
    解决html 图片缓存问题
    美工常用的网站分享
    小程序授权页面
    BitMap原理
    css页面加载动画
    可能这些是你想要的H5软键盘兼容方案
    关于范式 :1NF 2NF 3NF等
    Python3学习DAY4
    DTD相关
  • 原文地址:https://www.cnblogs.com/linksgo2011/p/3088511.html
Copyright © 2011-2022 走看看