/* 常用对象 */
//构造函数
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');width: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=\"" + "width:" + 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=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"img.outerHTML = strNewHTMLj = j - 1;}}}},/*** 自动缩放图片尺寸* ImgSource图片源(如URL)* ImgWidth要缩放的宽* ImgHeight要缩放的高* ImgToFit当图长宽都小于显示值时是否拉伸(true拉伸或false不拉伸)* 使用方法:原图的宽高最好也要写成缩放的大小<img src="***.jpg" width="180" height="110" οnlοad="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(); //默认生成一个对象 

有种高手写的感觉、

转载于:https://www.cnblogs.com/linksgo2011/archive/2013/05/20/3088511.html

js一个典型的对象写法,推荐使用这种格式,用于处理图像的基本方法、相关推荐

  1. 模板字符串 `` + 简化对象写法

    模板字符串(template string) 声明使用(本质是一个字符串) let str = `<ul><li>我是一个字符串</li> </ul>` ...

  2. JavaScript 学习(2) - JS的内建对象

    JS中的对象 JS对象介绍 String 对象 与C#中的string相比, JS中的这个对象为HTML增加了一些特别的功能,比如Anchor方法等.但是, 怎么才能把Anchor返回的字符串转换成D ...

  3. java输出一个对象_java里面直接输出一个类的对象

    Java直接输出一个类的对象的时候,会自动调用这个类的toString方法.这个方法在object类中,而所有的类都继承object类,所以所有的类都有toString方法.当我们不重写该方法时,该方 ...

  4. 前端进阶JS函数增强与对象增强

    JS函数增强 函数属性 JavaScript中函数也是一个对象,那么对象中就可以有属性和方法,他有一些默认的属性 name 函数名 length 函数参数个数(ES6 ... 语法不会被算在内) ar ...

  5. js中的DOM对象和jQuery对象的比较

    1. 二者的不同之处: 通过jQuery获取的元素是一个数组, 数组中包含着原生JS中的DOM对象. 例如, 针对下面的一个div结构: <div id="Box">& ...

  6. js 执行环境 活动对象 变量对象 作用域链的理解

    看一下是知乎大神对于 js 执行环境 活动对象 变量对象 作用域链的解释 假设在全局环境下定义了函数pub()和变量pubvar: var pubvar = 1; function pub () {v ...

  7. python爬虫应用实例_Python爬虫进阶必备 | 一个典型的 AES 加密在爬虫中的应用案例...

    一个典型的AES案例 AES 的案例之前有推荐大家关于 AES 加密的案例文章,不少朋友问我加密解决了有什么用? 最大的用途当然就是不用模拟请求,大大提高了爬取效率. 可能之前举例都是使用的 AES ...

  8. js 操作frameset frame 对象

    js 操作frameset frame 对象 框架编程概述 一个HTML页面可以有一个或多个子框架,这些子框架以<iframe>来标记,用来显示一个独立的HTML页面.这里所讲的框架编程包 ...

  9. ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map

    根据视频进行整理 [https://www.bilibili.com/video/BV1uK411H7on?p=1] 视频资源(百度网盘): 链接:[https://pan.baidu.com/s/1 ...

最新文章

  1. 图表 Echarts 3.0 简单使用
  2. java数据通道抽象为流_【java】IO流
  3. 一个可以检测网络内主机类型的脚本
  4. 汇编语言--算术运算指令
  5. Asp.net禁用site.Mobile.Master
  6. 算法 - 动态规划(0-1背包问题)
  7. 人生路上对我影响最大的三位老师
  8. IPLATUI----GRID状态
  9. 用ObjectProxy扩展模型对象
  10. linux切分文件指定行_vim技巧:在不同文件buffer间切换,在多窗口跳转和改变窗口大小...
  11. Mysql5.7中文乱码
  12. stat /bin/bash: no such file or directory“: unknown.
  13. fan4801开关电源原理图_六款简单的开关电源电路设计,内附原理图详解
  14. 典型相关分析(cca)原理_微生物多样研究—关联分析及系统发生进化关系
  15. 如何关闭华为手机连接电脑自动弹出cd驱动器和类似文件管理文件夹
  16. 怎么把ogg音频格式转换为mp3
  17. 09组团队项目-Alpha冲刺-6/6
  18. 没比这更简单的了!安装PHP composer(windows环境)及简易使用
  19. 原生JavaScript实现连连看游戏
  20. down mark 打钩_推荐一个Markdown数学公式编辑器——Haroopad Mathjax

热门文章

  1. S5PV210开发 -- 启动流程
  2. Nand Flash基础知识与坏块管理机制的研究
  3. 一篇不一样的docker原理解析
  4. 在Android Native层中创建Java虚拟机实例
  5. JZOJ 5459. 【NOIP2017提高A组冲刺11.7】密室
  6. 实战tkinter图形界面开发_如何进行简单的图形开发?
  7. stm8s003程序跑飞_A股要大跌?跑不跑就看明天……
  8. python获取系统时间为字符串_python怎么获取系统当前的时间
  9. libsvm 64 系统下编译问题
  10. 为什么读博士以及有什么意义