Opacity.js


Posted in Javascript onJanuary 22, 2007
//---------------------------------------------------------------  
// Opacity Displayer, Version 1.0  
// Copyright Michael Lovitt, 6/2002.  
// Distribute freely, but please leave this notice intact.  
//---------------------------------------------------------------  //---------------------------------------------------------------  
// OPACITY OBJECT  
//  
// Instantiates the object, defines the properties and methods.  
function OpacityObject(div, strPath) {  
 this.layerObject = div;  
 this.path = strPath;  
/* if (ns){  
  if (browserVersion>=5) {  
   this.layerObject = document.getElementById(divId).style;  
  } else {   
   this.layerObject = eval("document."+divId);  
  }  
 } else {  
  this.layerObject = eval(divId + ".style");  
 }/**/  
 this.setBackground = od_object_setBackground;  
}  
// Uses AlphaImageLoader filter, or the css background property,  
// as appropriate, to apply a PNG or GIF as the background of the layerObject.  
function od_object_setBackground() {  
 if (pngAlpha) {  
  this.layerObject.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+this.path+".png', sizingMethod='scale')";  
 } else if (pngNormal) {  
  if (browser.isMac && browser.isIE5up ) this.layerObject.backgroundColor = '#999999';  
  else this.layerObject.backgroundImage = 'url('+this.path+'.png)';  
 } else {  
  this.layerObject.backgroundImage = 'url('+this.path+'.gif)';  
 }  
}  
//---------------------------------------------------------------  
//---------------------------------------------------------------  
// OPACITY DISPLAY FUNCTION  
// Outputs the image as a div with the AlphaImageLoader, or with  
// a standard image tag.  
function od_displayImage(strId, strPath, intWidth, intHeight, strClass, strAlt) {   
 if (pngAlpha) {  
  document.write('<div style="height:'+intHeight+'px;width:'+intWidth+'px;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\''+strPath+'.png\', sizingMethod=\'scale\')" id="'+strId+'" class="'+strClass+'"></div>');  
 } else if (pngNormal) {  
  document.write('<img src="students/%27%2BstrPath%2B%27.png" width="'+intWidth+'" height="'+intHeight+'" name="'+strId+'" border="0" class="'+strClass+'" alt="'+strAlt+'" />');  
 } else {  
  document.write('<img src="students/%27%2BstrPath%2B%27.gif" width="'+intWidth+'" height="'+intHeight+'" name="'+strId+'" border="0" class="'+strClass+'" alt="'+strAlt+'" />');  
 }  
}  
//---------------------------------------------------------------  
//---------------------------------------------------------------  
// OPACITY ROLL-OVER FUNCTIONS  
function od_rollOver(strId, strColor) {   
 if (pngAlpha) {  
  document.getElementById(strId).style.backgroundColor = strColor;  
 } else {  
     if (document.images && (flag == true)) {  
         document[strId].src = eval(strId + "on.src");  
     }  
 }  
}  
function od_rollOut(strId, strColor) {   
 if (pngAlpha) {  
  document.getElementById(strId).style.backgroundColor = strColor;  
 } else {  
     if (document.images) {  
         document[strId].src = eval(strId + "off.src");  
     }  
 }  
}  
//---------------------------------------------------------------  
//---------------------------------------------------------------  
// global variables  
// if IE5.5+ on win32, then display PNGs with AlphaImageLoader  
if ((browser.isIE55 || browser.isIE6up) && browser.isWin32) {  
 var pngAlpha = true;  
 var strExt = ".png";  
// else, if the browser can display PNGs normally, then do that. that list includes:  
 //     -Gecko Engine: Netscape 6 or Mozilla, Mac or PC  
 //     -IE5+ Mac (OpacityObject applies the background image at 100% opacity)  
 //     -Opera 6+ PC  
 //     -Opera 5+ Mac (Doesn't support dynamically-set background images)  
 //     -Opera 6+ Linux   
 //     -Omniweb 3.1+   
 //     -Icab 1.9+   
 //     -WebTV   
 //     -Sega Dreamcast  
} else if ((browser.isGecko) || (browser.isIE5up && browser.isMac) || (browser.isOpera && browser.isWin && browser.versionMajor >= 6) || (browser.isOpera && browser.isUnix && browser.versionMajor >= 6) || (browser.isOpera && browser.isMac && browser.versionMajor >= 5) || (browser.isOmniweb && browser.versionMinor >= 3.1) || (browser.isIcab && browser.versionMinor >= 1.9) || (browser.isWebtv) || (browser.isDreamcast)) {  
 var pngNormal = true;  
 var strExt = ".png";  
 // otherwise, we use plain old GIFs  
} else {  
 var strExt = ".gif";  
}  
var ns = (document.all)?false:true;  
var browserVersion = parseFloat(navigator.appVersion );  
//---------------------------------------------------------------  
Javascript 相关文章推荐
JavaScript 盒模型 尺寸深入理解
Dec 31 Javascript
javascript基础之查找元素的详细介绍(访问节点)
Jul 05 Javascript
JavaScript中的Math.LOG2E属性使用详解
Jun 14 Javascript
谈谈Jquery ajax中success和complete有哪些不同点
Nov 20 Javascript
javascript html实现网页版日历代码
Mar 08 Javascript
微信小程序点击控件修改样式实例详解
Jul 07 Javascript
JavaScrip关于创建常量的知识点
Dec 07 Javascript
node使用promise替代回调函数
May 07 Javascript
微信小程序实现循环动画效果
Jul 16 Javascript
js实现多图和单图上传显示
Dec 18 Javascript
微信小程序 bindtap 传参的实例代码
Feb 21 Javascript
使用Vue-scroller页面input框不能触发滑动的问题及解决方法
Aug 08 Javascript
html读出文本文件内容
Jan 22 #Javascript
用ADODB.Stream转换
Jan 22 #Javascript
Web层改进II-用xmlhttp 无声息提交复杂表单
Jan 22 #Javascript
用正则xmlHttp实现的偷(转)
Jan 22 #Javascript
通过MSXML2自动获取QQ个人头像及在线情况(给初学者)
Jan 22 #Javascript
Javascript技术技巧大全(五)
Jan 22 #Javascript
深入认识JavaScript中的函数
Jan 22 #Javascript
You might like
浅谈php优化需要注意的地方
2014/11/27 PHP
PHP lcfirst()函数定义与用法
2019/03/08 PHP
JQuery Ajax 跨域访问的解决方案
2010/03/12 Javascript
js 页面元素的几个用法总结
2013/11/18 Javascript
jQuery实现“扫码阅读”功能
2015/01/21 Javascript
简单封装js的dom查询实例代码
2016/07/08 Javascript
解析Vue2.0双向绑定实现原理
2017/02/23 Javascript
JS+CSS实现下拉刷新/上拉加载插件
2017/03/31 Javascript
Vue2.0 UI框架ElementUI使用方法详解
2017/04/14 Javascript
探索webpack模块及webpack3新特性
2017/09/18 Javascript
vue select组件的使用与禁用实现代码
2018/04/10 Javascript
JS点击动态添加标签、删除指定标签的代码
2018/04/18 Javascript
vue如何限制只能输入正负数及小数
2019/07/04 Javascript
在vue项目中使用codemirror插件实现代码编辑器功能
2019/08/27 Javascript
ES6 Promise对象概念及用法实例详解
2019/10/15 Javascript
JS实现星星海特效
2019/12/24 Javascript
基于node+websocket+html实现腾讯课堂聊天室聊天功能
2020/03/04 Javascript
Vue3 实现双盒子定位Overlay的示例
2020/12/22 Vue.js
vue element和nuxt的使用技巧分享
2021/01/14 Vue.js
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
常用python数据类型转换函数总结
2014/03/11 Python
flask + pymysql操作Mysql数据库的实例
2017/11/13 Python
python快速建立超简单的web服务器的实现方法
2018/02/17 Python
tensorflow学习笔记之mnist的卷积神经网络实例
2018/04/15 Python
python检测主机的连通性并记录到文件的实例
2018/06/21 Python
Python实现的拉格朗日插值法示例
2019/01/08 Python
Python Django简单实现session登录注销过程详解
2019/08/06 Python
可打印的优惠券、杂货和优惠券代码:Coupons.com
2018/06/12 全球购物
工作决心书范文
2014/03/11 职场文书
开学典礼演讲稿
2014/05/23 职场文书
医院护士见习期自我鉴定
2014/09/15 职场文书
信仰观后感
2015/06/03 职场文书
体育部部长竞选稿
2015/11/21 职场文书
Win11 Build 22000.51版本文件资源管理器“命令栏”和上下文菜单有什么新变化?
2021/11/21 数码科技
Golang 入门 之url 包
2022/05/04 Golang
一次SQL查询优化原理分析(900W+数据从17s到300ms)
2022/06/10 SQL Server