JQuery boxy插件在IE中边角图片不显示问题的解决


Posted in Javascript onMay 20, 2015

JQuery boxy插件很好用,但也会出现一些问题,比如弹出框的边角在IE中不能显示。本博文将来解决这个问题。将boxy插件引用到项目中后会有一个boxy.css文件和jquery.boxy.js文件。在boxy.css文件中有给弹出框设置四个角图片的样式,如下图:

JQuery boxy插件在IE中边角图片不显示问题的解决

不做任何修改在Chrome浏览器下没有问题,如下:

JQuery boxy插件在IE中边角图片不显示问题的解决

在网上查了一些资料,说将css文件中的图片路径给位全路径可以解决问题,如下:

JQuery boxy插件在IE中边角图片不显示问题的解决

发现这样修改后并没有作用,运行后效果仍然如下:

JQuery boxy插件在IE中边角图片不显示问题的解决

有效的解决方法

将上面css截图的下半部分注释掉,如下图:

JQuery boxy插件在IE中边角图片不显示问题的解决

然后在jquery.boxy.js文件中的Boxy函数中添加一段脚本,下面贴出修改后的Boxy函数代码:

function Boxy(element, options) {
  
  this.boxy = jQuery(Boxy.WRAPPER);
  jQuery.data(this.boxy[0], 'boxy', this);
  
  this.visible = false;
  this.options = jQuery.extend({}, Boxy.DEFAULTS, options || {});
  
  if (this.options.modal) {
    this.options = jQuery.extend(this.options, {center: true, draggable: false});
  }
  
  // options.actuator == DOM element that opened this boxy
  // association will be automatically deleted when this boxy is remove()d
  if (this.options.actuator) {
    jQuery.data(this.options.actuator, 'active.boxy', this);
  }
  
  this.setContent(element || "<div></div>");
  this._setupTitleBar();
  
  this.boxy.css('display', 'none').appendTo(document.body);
  this.toTop();

  if (this.options.fixed) {
    if (jQuery.browser.msie && jQuery.browser.version < 7) {
      this.options.fixed = false; // IE6 doesn't support fixed positioning
    } else {
      this.boxy.addClass('fixed');
    }
  }
  
  if (this.options.center && Boxy._u(this.options.x, this.options.y)) {
    this.center();
  } else {
    this.moveTo(
      Boxy._u(this.options.x) ? this.options.x : Boxy.DEFAULT_X,
      Boxy._u(this.options.y) ? this.options.y : Boxy.DEFAULT_Y
    );
  }

  //fengwei add 2010-11-28
  //用于解决弹出框的圆角在ie中的显示问题
  if ($.browser.msie) {
    var setFilter = function(cls) {
      var obj = $(cls), ret = obj.css("background-image").match(/url\(\"(.+)\"\)/);
      if (ret == null || ret.length < 1) return;
      obj.css({
        "background": "none", "filter": "alpha(opacity=0)",
        "filter": "progid:DXImageTransform.Microsoft.
                       AlphaImageLoader(src='" + ret[1] + "')"
      });
    };

    setFilter(".top-left");
    setFilter(".top-right");
    setFilter(".bottom-left");
    setFilter(".bottom-right");
  }
  
  if (this.options.show) this.show();

};

修改好css和js文件后,再次运行程序,在IE6,7,8中均能正常弹出带边角的框了。

希望本文对您有所帮助。

Javascript 相关文章推荐
Javascript 调试利器 Firebug使用详解六
Jul 05 Javascript
javascript学习笔记(十八) 获得页面中的元素代码
Jun 20 Javascript
js控制滚动条缓慢滚动到顶部实现代码
Mar 20 Javascript
javascript数组操作总结和属性、方法介绍
Apr 05 Javascript
JavaScript实现控制打开文件另存为对话框的方法
Apr 17 Javascript
AngularJS实现textarea记录只能输入规定数量的字符并显示
Apr 26 Javascript
Three.js快速入门教程
Sep 09 Javascript
Angular 2父子组件数据传递之@Input和@Output详解 (上)
Jul 05 Javascript
JS模拟超市简易收银台小程序代码解析
Aug 18 Javascript
Vue v2.5 调整和更新不完全问题
Oct 24 Javascript
微信小程序封装分享与分销功能过程解析
Aug 13 Javascript
解决layUI的页面显示不全的问题
Sep 20 Javascript
JS中的Replace方法使用经验分享
May 20 #Javascript
jquery使用经验小结
May 20 #Javascript
js实现字符串转日期格式的方法
May 20 #Javascript
JavaScript实现带标题的图片轮播特效
May 20 #Javascript
手机端页面rem宽度自适应脚本
May 20 #Javascript
jquery实现弹出层效果实例
May 19 #Javascript
jQuery结合ajax实现动态加载文本内容
May 19 #Javascript
You might like
php网页病毒清除类
2014/12/08 PHP
PHP register_shutdown_function()函数的使用示例
2015/06/23 PHP
php邮件发送的两种方式
2020/04/28 PHP
Laravel使用scout集成elasticsearch做全文搜索的实现方法
2018/11/30 PHP
php的对象传值与引用传值代码实例讲解
2021/02/26 PHP
jquery插件冲突(jquery.noconflict)解决方法分享
2014/03/20 Javascript
jquery新的绑定事件机制on方法的使用方法
2014/04/15 Javascript
JavaScript性能优化之小知识总结
2015/11/20 Javascript
基于javascript实现简单的抽奖系统
2020/04/15 Javascript
AngularJS入门(用ng-repeat指令实现循环输出
2016/05/05 Javascript
JavaScript简单获取页面图片原始尺寸的方法
2016/06/21 Javascript
jquery获取下拉框中的循环值
2017/02/08 Javascript
Ionic + Angular.js实现验证码倒计时功能的方法
2017/06/12 Javascript
jQuery实现手势解锁密码特效
2017/08/14 jQuery
基于react组件之间的参数传递(详解)
2017/09/05 Javascript
JavaScript中的回调函数实例讲解
2019/01/27 Javascript
vue中template的三种写法示例
2020/10/21 Javascript
[01:34]2014DOTA2展望TI 剑指西雅图VG战队专访
2014/06/30 DOTA
python简单读取大文件的方法
2016/07/01 Python
浅谈用VSCode写python的正确姿势
2017/12/16 Python
Python实现简单遗传算法(SGA)
2018/01/29 Python
python调用API实现智能回复机器人
2018/04/10 Python
Django后台获取前端post上传的文件方法
2018/05/28 Python
Python 中的参数传递、返回值、浅拷贝、深拷贝
2019/06/25 Python
如何利用Python开发一个简单的猜数字游戏
2019/09/22 Python
从pandas一个单元格的字符串中提取字符串方式
2019/12/17 Python
Windows 下python3.8环境安装教程图文详解
2020/03/11 Python
python中的socket实现ftp客户端和服务器收发文件及md5加密文件
2020/04/01 Python
用python实现前向分词最大匹配算法的示例代码
2020/08/06 Python
pytorch 把图片数据转化成tensor的操作
2021/03/04 Python
波兰灯具、照明和LED购物网站:Lampy.pl
2019/03/11 全球购物
文员个人求职自荐信
2013/09/21 职场文书
大专应届生个人简历的自我评价
2013/10/15 职场文书
旷课检讨书大全
2014/01/21 职场文书
采购部部长岗位职责
2014/02/06 职场文书
党员个人整改方案及措施
2014/10/25 职场文书