原生js和jquery中有关透明度设置的相关问题


Posted in Javascript onJanuary 08, 2014

在日常开发的网站中,常常会用到设置透明度问题,最简单的就是图片的淡入淡出效果。下面我介绍一下在原生js和jQuery中设置透明度的相关问题和注意点:

1 透明度样式设置
透明度在IE浏览器和其他相关浏览器中的设置方法不太相同,IE使用filter:alpha属性,firefox使用opactiy属性,下面示例设置透明度为30%:
IE:filter: alpha(opacity:30);
firefox:opacity(0.3);

2 原生js设置透明度
为了兼容IE与其他浏览器对透明度的设置,我们需要对以上两种样式分别进行设置;

var alpha = 30; //透明度值变量 
var oDiv = document.getElementById('div1'); //获取DOM元素对象 
oDiv.style.filter = 'alpha(opacity:'+alpha+')'; //设置IE的透明度 
oDiv.style.opacity = alpha / 100; //设置fierfox等透明度,注意透明度值是小数

3 jQuery设置透明度
jQuery中对透明度的设置进行了整合,兼容IE和其他浏览器,修改opactiy属性值即可,值为小数,因此只需要设置一次即可;
$(function(){ 
$("#div1").css("opacity","0.3"); //设置透明度 
});

4 一个示例
示例使用原生js实现一个div的淡入淡出效果;鼠标移入div区域,透明度为100%,鼠标移出div区域透明度为30%,同时用时间控制透明度转换效果;
window.onload=function() 
{ 
var oDiv = document.getElementById('div1');//获取div的DOM对象 
oDiv.onmouseover = function() //鼠标移入方法 
{ 
startMove(100); 
}; 
oDiv.onmouseout = function() //鼠标移出方法 
{ 
startMove(30); 
}; 
} var timer = null;//时间对象 
var alpha = 30;//透明度初始值 
function startMove(iTarget) 
{ 
var oDiv = document.getElementById('div1'); 
clearInterval(timer);//清空时间对象 
timer = setInterval(function(){ 
var speed = 0; 
if(alpha < iTarget) 
{ 
speed =5; 
} 
else 
{ 
speed = -5; 
} 
if(alpha == iTarget) 
{ 
clearInterval(timer); 
} 
else 
{ 
alpha +=speed; //透明度值增加效果 
oDiv.style.filter = 'alpha(opacity:'+alpha+')'; //设置IE透明度 
oDiv.style.opacity = alpha / 100; //设置其他浏览器 
} 
},30); 
}
Javascript 相关文章推荐
SwfUpload在IE10上不出现上传按钮的解决方法
Jun 25 Javascript
javascript实现10个球随机运动、碰撞实例详解
Jul 08 Javascript
浅析BootStrap中Modal(模态框)使用心得
Dec 24 Javascript
javascript设计模式之单体模式学习笔记
Feb 15 Javascript
Vue.js devtool插件安装后无法使用的解决办法
Nov 27 Javascript
vue todo-list组件发布到npm上的方法
Apr 04 Javascript
vue中vee validate表单校验的几种基本使用
Jun 25 Javascript
vue中各选项及钩子函数执行顺序详解
Aug 25 Javascript
微信小程序模板template简单用法示例
Dec 04 Javascript
微信小程序实现多选框功能的实例代码
Jun 24 Javascript
Webpack的Loader和Plugin的区别
Nov 09 Javascript
JavaScript中10个Reduce常用场景技巧
Jun 21 Javascript
iframe窗口高度自适应的实现方法
Jan 08 #Javascript
jquery对单选框,多选框,文本框等常见操作小结
Jan 08 #Javascript
jquery操作下拉列表、文本框、复选框、单选框集合(收藏)
Jan 08 #Javascript
js获取当前页面路径示例讲解
Jan 08 #Javascript
js获取当前路径的简单示例代码
Jan 08 #Javascript
JS 操作Array数组的方法及属性实例解析
Jan 08 #Javascript
jquery 图片缩放拖动的简单实例
Jan 08 #Javascript
You might like
广播爱好者需要了解的天线知识
2021/03/01 无线电
phpmyadmin config.inc.php配置示例
2013/08/27 PHP
ThinkPHP应用模式扩展详解
2014/07/16 PHP
php经典算法集锦
2015/11/14 PHP
phpmailer绑定邮箱的实现方法
2016/12/01 PHP
PHP实现的多维数组排序算法分析
2018/02/10 PHP
PHP按一定比例压缩图片的方法
2018/10/12 PHP
jquery 表格的增行删行实现思路
2013/03/21 Javascript
Ajax请求在数据量大的时候出现超时的解决方法
2014/02/27 Javascript
node.js中的http.createClient方法使用说明
2014/12/15 Javascript
jQuery 遍历函数详解
2015/07/05 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
根据Bootstrap Paginator改写的js分页插件
2016/12/25 Javascript
JavaScript在form表单中使用button按钮实现submit提交方法
2017/01/23 Javascript
jquery仿微信聊天界面
2017/05/06 jQuery
vue实现全选和反选功能
2017/08/31 Javascript
详解ES6中的 Set Map 数据结构学习总结
2018/11/06 Javascript
微信小程序实现手指拖动选项排序
2020/04/22 Javascript
解决Echarts2竖直datazoom滑动后显示数据不全的问题
2020/07/20 Javascript
vant中的toast轻提示实现代码
2020/11/04 Javascript
Vue 3自定义指令开发的相关总结
2021/01/29 Vue.js
Python and、or以及and-or语法总结
2015/04/14 Python
Python导出数据到Excel可读取的CSV文件的方法
2015/05/12 Python
Python使用中文正则表达式匹配指定中文字符串的方法示例
2017/01/20 Python
Python进阶之递归函数的用法及其示例
2018/01/31 Python
python 高效去重复 支持GB级别大文件的示例代码
2018/11/08 Python
Python流程控制 while循环实现解析
2019/09/02 Python
python如何处理程序无法打开
2020/06/16 Python
澳大利亚在线性感内衣商店:Fantasy Lingerie
2021/02/07 全球购物
什么是Remote Module
2016/06/10 面试题
便利店的创业计划书
2014/01/15 职场文书
中学生运动会入场词
2014/02/12 职场文书
搞笑婚礼主持词
2014/03/13 职场文书
社团活动总结
2014/04/28 职场文书
2015年社区综治工作总结
2015/04/21 职场文书
2016新年感言
2015/08/03 职场文书