超级兔子让浮动层消失的前因后果

2016-02-19 10:30 4 1 收藏

有一种朋友不在生活里,却在生命力;有一种陪伴不在身边,却在心间。图老师即在大家的生活中又在身边。这么贴心的服务你感受到了吗?话不多说下面就和大家分享超级兔子让浮动层消失的前因后果吧。

【 tulaoshi.com - Web开发 】

刚搞定了瑞星卡卡,又冲来个超级兔子。不过超级兔子的枪法真的有待改善。

还是同样的问题:安装了超级兔子IE工具条的用户购买自动发货商品时,LightBox形式的购买提醒框刚一显示就消失了。而灰蒙的遮蔽层依然显示,用户又无法继续操作了。

根据研究,超级兔子对屏蔽广告的屏蔽原则更为武断,只要是在JavaScript代码中出现类似 “div.style.position=absolute” 的代码,div 就会被隐藏,不仅如此,超级兔子还会检查页面中的元素,只要一个元素以inline形式设置了position样式属性以及配套的任一个top/left属性,比如”div style=”position:absolute;top:0;”xxx/div”,那么也会将其隐藏。

但与瑞星卡卡不同之处在于,超级兔子并不会把绝对定位元素从DOM中抹除。而是设置元素的style.visibility = hidden。这就是为什么自动发货的购买提醒框消失的原因。

如何避免超级兔子的枪盲目射击呢?其实很简单,不要用JavaScript 或者以inline的形式设置绝对定位相关的CSS属性即可。可以把这些CSS属性直接通过class或id的形式定义在样式单文件或style/中(本来也应该这么做)。

如果不得不用JavaScript设置绝对定位属性,比如一些菜单/动画的效果。就要通过脚本的办法来解决了,还记得超级兔子和瑞星卡卡对浮动广告的处理区别吗?伪码可能如下:

代码如下:

script type=”text/javascript” 
function setPosition() { 
    FloatLayer.style.top = y; 
    FloatLayer.style.left = x; 
    setTimeout(checkSR, 100); 

function checkSR() { 
    if (FloatLayer.currentStyle && FloatLayer.currentStyle.visibility=='hidden')) 
        fixUp(); 

/script  


我也痛恨浮动广告,可是淘宝的页面真的很干净了,不是吗

来源:http://www.tulaoshi.com/n/20160219/1594886.html

延伸阅读
标签: Web开发
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" html head titleMyPixbot/title meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" script language="JavaScript" type="text/JavaScript" !-- function MM_reloadPage(init) {  //reloads the window if Nav4 resized   if (init==true) wit...
标签: Web开发
IE捉迷藏bug(peek-a-boo),之所以起这个名称是因为在某些条件下文本看起来消失了,只有在重新装载页面时才再度出现。出现这个bug的条件是:一个浮动元素后而跟着一些非浮动元素,然后是一个清理元素,所有这些元素都包含在一个设置了背景颜色或图像的你元素中。如果清理元素砬到了浮动元素,那么中间的非浮支元素看起来消失了,隐到了父...
超级兔子安装失败怎么办?   超级兔子常见问题解答: 1、旧版本已设置,魔法设置、安全助手,在新版本中如何修改或为空密码 ? 超级兔子安全助手的密码删除:在开始菜单的运行中输入RegEdit打开注册表定位于 [HKEY_LOCAL_MACHINESOFTWARESuper RabbitSafeEditPassword]"UserPassWord"="WVYKNSMFV...
鲁大师和超级兔子哪个好   鲁大师是一款新出的小工具,虽然与传统的系统优化工具优化大师提供的功能显得单薄,但相对来说它可以轻松准确的检测出各种硬件信息,从CPU、主板、硬盘、内存等等,同时也能帮助用户检测系统漏洞,并可以快速下载对应的补丁;有全智能的一键优化和一键恢复功能,迅速、全面清理系统垃圾,为用户提供驱动备份...
标签: Web开发
关于闭合浮动元素(clearing float)的方法现在已经很多了,你还不了解的话去old9的blog看看,有一篇闭合浮动元素。 这些方法我最喜欢就是 使用:after 伪类动态的嵌入一个用于清除浮动的元素,可惜代码量太大了,看着不够简洁。现在我看到有个方法超级简单。赶紧介绍一下。 原理是这样的,外围元素之所以不能很好的延伸,问题出在了overflow...

经验教程

583

收藏

69
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部