Ext界面下做图片动态加载的图片放大镜效果并解决IE6下遮罩mask无法遮盖HTML的select控件问题

直接贴一段源码吧:

if (typeof (this.mask) == "undefined") {  
            this.mask = document.createElement("div");  
            this.mask.id = this.oim.__maskid + "_mask";  
            this.mask.style.position = "absolute";  
            this.mask.style.width = this.maskWidth + "px";  
            this.mask.style.height = this.maskHeight + "px";  
            this.mask.style.left = this.maskXp + "px";  
            this.mask.style.top  = this.maskYp + "px";  
            this.mask.style.backgroundImage = "url(" + this.src + ")";  
            this.mask.style.backgroundRepeat = "no-repeat";  
            this.mask.style.display = "none";  
            this.mask.style.zIndex = 1000;  
            //TO cover other controls like select when run on IE6  
            this.mask.innerHTML = '<iframe style=\'width:100%;height:100%;position:absolute;z-index:-1;filter:alpha(opacity=0);border:none\' frameborder=\'no\' border=\'0\' ></iframe>';  
            document.body.appendChild(this.mask);  
        }  
相信里面的注释你也能看懂。
 
google搜索:IE6 遮罩 mask select控件
相信你会得到很多的相关文章。
其中很多都提到要解决隐藏select控件问题,有两种方法。
第一种,写一段JS主动隐藏select控件。
如:http://news.cnblogs.com/q/20390/
这篇文章里面给出了常用的隐藏控件代码。
而且里面有一处代码吸引了我:
 
//向div中添加table  
    var table = document.createElement("table");  
    msgObj.appendChild(table);  


这为后面的最终实现奠定了基础。PS:主要是我JS没学,现整的。
第二种,全屏遮罩!
如:http://bbs.blueidea.com/thread-2941022-1-4.html
PS:这种挺雷的!有点全城热恋的感觉。为什么呢,因为这种场合用的很少,但技术上可赞的。
第三种,最靠谱的方法,使用iframe嵌套。
参考:http://blog.csdn.net/chinapi_hzh/article/details/6036973
还有个帖子,我没收藏,也是CSDN里的,内容大概是作者终于闲下来了,想想工作遇到的这个问题一直都在思索。中间提到了主动隐藏法的消耗问题,再次肯定了利用iframe。但是没有实现,估计也是还没解决呢。
 
其实大概的思路还是如前人所述:在div里嵌套个iframe。
因为IE6下,div遮挡不了select。但是iframe可以遮挡select。
转自:http://blog.csdn.net/dingherry/article/details/6708233

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值