原生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 相关文章推荐
JavaScript 学习笔记(十三)Dom创建表格
Jan 21 Javascript
jquery插件之easing 动态菜单
Aug 21 Javascript
jquery仿搜索自动联想功能代码
May 23 Javascript
jQuery解析json格式数据简单实例
Jan 22 Javascript
基于Bootstrap使用jQuery实现输入框组input-group的添加与删除
May 03 Javascript
jQuery中的each()详细介绍(推荐)
May 25 Javascript
基于Vuex无法观察到值变化的解决方法
Mar 01 Javascript
jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法
Mar 28 jQuery
微信小程序bindinput与bindsubmit的区别实例分析
Apr 17 Javascript
详细教你微信公众号正文页SVG交互开发技巧
Jul 25 Javascript
从零搭一个自用的前端脚手架的方法步骤
Sep 23 Javascript
js实现无刷新监听URL的变化示例代码详解
Jun 03 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
其他功能
2006/10/09 PHP
php检测网页是否被百度收录的函数代码
2013/10/09 PHP
php 购物车完整实现代码
2014/06/05 PHP
php备份数据库类分享
2015/04/14 PHP
PHP使用pdo实现事务处理操作示例
2018/09/05 PHP
修改好的jquery滚动字幕效果实现代码
2011/06/22 Javascript
点击弹出层外区域关闭弹出层jquery特效示例
2013/08/25 Javascript
30个经典的jQuery代码开发技巧
2014/12/15 Javascript
js实现简单鼠标跟随效果的方法
2015/04/10 Javascript
jquery图片切换实例分析
2015/04/15 Javascript
JS 实现倒计时数字时钟效果【附实例代码】
2016/03/30 Javascript
使用jQuery Ajax 请求webservice来实现更简练的Ajax
2016/08/04 Javascript
如何在AngularJs中调用第三方插件库
2017/05/21 Javascript
nodejs 子进程正确的打开方式
2017/07/03 NodeJs
JavaScript 有用的代码片段和 trick
2018/02/22 Javascript
解决vue-router进行build无法正常显示路由页面的问题
2018/03/06 Javascript
JQuery元素快速查找与操作
2018/04/22 jQuery
vue中实现左右联动的效果
2018/06/22 Javascript
vue实现div拖拽互换位置
2020/07/29 Javascript
vue 插件的方法代码详解
2019/06/06 Javascript
Vue element-ui父组件控制子组件的表单校验操作
2020/07/17 Javascript
Vue 组件注册全解析
2020/12/17 Vue.js
[01:05:32]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第一局
2016/03/04 DOTA
[55:44]OG vs NAVI 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python求素数示例分享
2014/02/16 Python
Python下的Mysql模块MySQLdb安装详解
2014/04/09 Python
Python入门_浅谈字符串的分片与索引、字符串的方法
2017/05/16 Python
pandas 把数据写入txt文件每行固定写入一定数量的值方法
2018/12/28 Python
Python3.5 Pandas模块之DataFrame用法实例分析
2019/04/23 Python
会计职业生涯规划书
2014/01/13 职场文书
大学学风建设方案
2014/05/04 职场文书
开展党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
鲁迅故居导游词
2015/02/05 职场文书
如何把新闻人物写得立体、鲜活?
2019/08/14 职场文书
python如何读取.mtx文件
2021/04/22 Python
python opencv通过4坐标剪裁图片
2021/06/05 Python