Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法


Posted in Javascript onDecember 06, 2010

今天又回顾了一下这个插件,然后发现它在IE6下面工作的时候,显示起来是不正常的,tip经常出现在很离谱的位置。问题还有,由于tip的显示效果没有用到任何图像,都是纯的CSS,所以里面用CSS实现的三角形在IE6下是无法工作的,会显示一块有色区域,很丑,所以我就想动手改它一下。先上一张对比图好了:

Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法
js方面的代码肯定是没问题的,问题出CSS上,Colortip用的是position进行定位,在IE6下面可能存在着一点问题。而且由于IE6不支持border-color:transparent的属性,所以tip下面的三角形也有问题。下面修正它吧。
打开插件的colortip-1.0-jquery.css这个文件,在里面找到如下代码:

.pointyTip,.pointyTipShadow{ 
/* Setting a thick transparent border on a 0x0 div to create a triangle */ 
border:6px solid transparent; 
_border:6px solid #123456; /*指定一个特别的颜色值,为使用chroma滤镜作准备*/ 
bottom:-12px; 
height:0; 
left:50%; 
margin-left:-6px; 
position:absolute; 
width:0; 
font-size:0; /*IE下空标签会有一个高度,把font-size设为0可以清除这个高度*/ 
_filter:chroma(color=#123456); /*为IE6使用chroma滤镜将颜色#123456过滤成透明的*/ 
}

如果大家自行看一下代码的话,可能会发现我贴出来的代码和原来相比有点不同,但是我已经把注释写在里面了,应该可以理解吧。 下面继续:
.pointyTipShadow{ 
/* The shadow tip is 1px larger, so it acts as a border to the tip */ 
border-width:7px; 
bottom:-14px; 
_bottom:-15px; /*将小三角形的位置微调一下更准确*/ 
margin-left:-7px; 
} 
.colorTipContainer{ 
position:relative; 
text-decoration:none !important; 
_zoom:1; /*不知道为什么,这里加上zoom:1后IE6下使用left:50%才能得到正确的位置,难道内联的元素没有layout?无法准确表达……*/ 
}

好了,到这里就修正完毕了,在我的机器上,用IEtester和VMware虚拟机的XP+IE6都测试通过,你也可以试试效果。有任何问题可以向我反馈,我能改则改。代码好理解,不能理解的直接用插件就行了。

插件网站 | 原版DEMO | 改后DEMO | 修正后的插件下载

再补充一句,原版和改后的DEMO在高级浏览器里面的效果是一样的,没区别,但是用IE6试试就知道了。希望我做的这一点点微不足道的工作,为喜欢这款插件的朋友们带来方便,^_^
关于纯CSS的方法实现三角形的效果,可以参看Mr.Think的这篇文章,很详细很不错的技巧CSS技巧之圆角背景与三角形。

Javascript 相关文章推荐
javascript 时间比较实现代码
Oct 28 Javascript
选择器中含有空格在使用示例及注意事项
Jul 31 Javascript
Jquery选中或取消radio示例
Sep 29 Javascript
onkeyup,onkeydown和onkeypress的区别介绍
Oct 21 Javascript
js字母大小写转换实现方法总结
Nov 13 Javascript
Lua表达式和控制结构学习笔记
Dec 15 Javascript
node.js中的fs.openSync方法使用说明
Dec 17 Javascript
Angularjs编写KindEditor,UEidtor,jQuery指令
Jan 28 Javascript
JavaScript对数组进行随机重排的方法
Jul 22 Javascript
javascript中错误使用var造成undefined
Mar 31 Javascript
js判断手机系统是android还是ios
Mar 07 Javascript
js动态引入的四种方法
May 05 Javascript
使用JS进行目录上传(相当于批量上传)
Dec 05 #Javascript
js对象的构造和继承实现代码
Dec 05 #Javascript
收集的一些Array及String原型对象的扩展实现代码
Dec 05 #Javascript
script标签的 charset 属性使用说明
Dec 04 #Javascript
本地对象Array的原型扩展实现代码
Dec 04 #Javascript
悄悄用脚本检查你访问过哪些网站的代码
Dec 04 #Javascript
jQuery)扩展jQuery系列之一 模拟alert,confirm(一)
Dec 04 #Javascript
You might like
仿AS3实现PHP 事件机制实现代码
2011/01/27 PHP
解决File size limit exceeded 错误的方法
2013/06/14 PHP
PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
2016/06/13 PHP
屏蔽F1~F12的快捷键的js函数
2010/05/06 Javascript
JavaScript打开word文档的实现代码(c#)
2012/04/16 Javascript
基于jquery的不规则矩形的排列实现代码
2012/04/16 Javascript
javascript常用对话框小集
2013/09/13 Javascript
js全选按钮的实现方法
2015/11/17 Javascript
javascript实现别踩白块儿小游戏程序
2015/11/22 Javascript
JavaScript File API文件上传预览
2016/02/02 Javascript
javascript经典特效分享 手风琴、轮播图、图片滑动
2016/09/14 Javascript
利用JS屏蔽页面中的Enter按键提交表单的方法
2016/11/25 Javascript
详解vue+vueRouter+webpack的简单实例
2017/06/17 Javascript
nodejs构建本地web测试服务器 如何解决访问静态资源问题
2017/07/14 NodeJs
Vue filter介绍及详细使用
2018/04/04 Javascript
vue.js做一个简单的编辑菜谱功能
2018/05/08 Javascript
微信小程序实现运动步数排行功能(可删除)
2018/07/05 Javascript
vue.js中使用echarts实现数据动态刷新功能
2019/04/16 Javascript
koa router 多文件引入的方法示例
2019/05/22 Javascript
layui实现数据表格自定义数据项
2019/10/26 Javascript
解决vue语法会有延迟加载显现{{xxx}}的问题
2019/11/14 Javascript
[02:38]DOTA2亚洲邀请赛 IG战队巡礼
2015/02/03 DOTA
python列表操作之extend和append的区别实例分析
2015/07/28 Python
Python求算数平方根和约数的方法汇总
2016/03/09 Python
Python实现简单生成验证码功能【基于random模块】
2018/02/10 Python
python检测主机的连通性并记录到文件的实例
2018/06/21 Python
Python连接Mssql基础教程之Python库pymssql
2018/09/16 Python
Python面向对象之类的内置attr属性示例
2018/12/14 Python
python字符串切割:str.split()与re.split()的对比分析
2019/07/16 Python
python Kmeans算法原理深入解析
2019/08/23 Python
django正续或者倒序查库实例
2020/05/19 Python
会计自荐信范文
2014/03/09 职场文书
离婚案件答辩状
2015/05/22 职场文书
小学生必读成语故事大全:送给暑假的你们
2019/07/09 职场文书
JS ES6异步解决方案
2021/04/29 Javascript
日本官方排名前10的动漫,名侦探柯南上榜,第一是一部创造历史的动漫
2022/03/18 日漫