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

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

还是同样的问题:安装了超级兔子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>

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

(0)

相关推荐

  • js 浮动层菜单收藏

    使用说明 即仅需把附件中的 JS 文件和 CSS 文件引用到网页里,如: 复制代码 代码如下: <script type="text/javascript" src="DivMenu.js"></script> <link href="DivMenu.css" rel="stylesheet" type="text/css" /> 在线演示 http://img.jb51

  • jQuery powerFloat万能浮动层下拉层插件使用介绍

    一.写插件的缘由 为什么想写此插件,想来想去,归结为一个字:"懒".不想为明明两个类似的功能分别写代码,本应喝茶看美女的休闲时光晃荡在本可避免的代码上,对于我来讲,就是白白耗费自己的青春.于是,干脆,一鼓作气,把这些类似的功能集合到一起,一个插件搞定,一了百了了.这种感觉就好比<大话西游>里悟空一巴掌拍死唐僧这只苍蝇一样.那,这里提及的类似的功能是指?当当当当,就是与某元素有位置关系的浮动层(例如tip类效果,鼠标经过显示大图,下拉列表等). 二.插件概述 插件名为jque

  • 仿CSDN 右下角悬挂的浮动层效果

    ads body{ font-size:12px; margin:0px; } /**for ads**/ h1{ font-size:14px; } .ads{ margin:0px auto; width:325px; height:190px; border:1px solid #ddd; } CSDN右下角悬挂效果 #ads_14{ float:right; font-family: verdana,sans-serif; } #ads_14 H6 { width:282px; heig

  • 关于flash遮盖div浮动层的解决方法

    网上的解决方案: From:http://codingforums.com/showthread.php?t=95109 (a) place Flash embed script in <div> container (I use SWFObject.js)[将flash嵌入脚本放到一个div容器中] (b) add wmode=transparent to Flash embed script[增加wmode=transparent 到flash嵌入脚本] (c) set <div i

  • jQuery页面滚动浮动层智能定位实例代码

    HTML代码: 复制代码 代码如下: <div class="float" id="float"> 我是个腼腆羞涩的浮动层... </div> JS代码: 复制代码 代码如下: $.fn.smartFloat = function() { var position = function(element) { var top = element.position().top, pos = element.css("position&q

  • MooTools 页面滚动浮动层智能定位实现代码

    HTML代码: 复制代码 代码如下: <div class="float" id="float"> 我是个腼腆羞涩的浮动层... </div> JS代码: 复制代码 代码如下: var $smartFloat = function(elements) { var position = function(element) { var top = element.getPosition().y, pos = element.getStyle(&q

  • 经典的带阴影的可拖动的浮动层

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>MyPixbot</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><script language

  • 基于jquery的浮动层效果代码

    本浮动层基于jQuery1.6.2,对于研究1.6版本的jquery很有帮助意义. jquery浮动层 #Float {background-color: #000;height: 200px;width: 100px;position: absolute;top: 80px;right: 20px;} $(document).ready(function(){ $(window).scroll(function (){ var offsetTop = $(window).scrollTop()

  • jQuery实现页面滚动时层智能浮动定位实例探讨

    各位兄弟可能碰到定位的问题,特别是在博客或者微博上面也会见到这个效果,于是产品人员在策划的时候就会要人家那种效果,,,而苦逼的我们需要去实现,实现实现.....没办法,谁让我们是攻城师呢,攻吧: 效果图如下,滚动条下拉的时候黑色的块TOP为0:固定显示: 代码如下: 复制代码 代码如下: <!DOCTYPE html> <html > <head> <title>jQuery实现页面滚动时层智能浮动定位</title> <meta name

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

    刚搞定了瑞星卡卡,又冲来个超级兔子.不过超级兔子的枪法真的有待改善. 还是同样的问题:安装了超级兔子IE工具条的用户购买自动发货商品时,LightBox形式的购买提醒框刚一显示就消失了.而灰蒙的遮蔽层依然显示,用户又无法继续操作了. 根据研究,超级兔子对屏蔽广告的屏蔽原则更为武断,只要是在JavaScript代码中出现类似 "div.style.position=absolute" 的代码,div 就会被隐藏,不仅如此,超级兔子还会检查页面中的元素,只要一个元素以inline形式设置了

  • jQuery实现浮动层随浏览器滚动条滚动的方法

    本文实例讲述了jQuery实现浮动层随浏览器滚动条滚动的方法.分享给大家供大家参考.具体如下: 这是jQuery实现的一个浮动层效果,随浏览器滚动条而滚动,并一直保持在顶部位置,请使用火狐测试,IE下表现不尽理想. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/jquery-float-follow-nav-style-codes/ 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0

  • js实现从右向左缓缓浮出网页浮动层广告的方法

    本文实例讲述了js实现从右向左缓缓浮出网页浮动层广告的方法.分享给大家供大家参考.具体实现方法如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"&

  • JavaScript实现的浮动层框架用法实例分析

    本文实例讲述了JavaScript实现的浮动层框架用法.分享给大家供大家参考.具体如下: 这是一个JavaScript编写的浮动层框架,作为框架来说,骨干已经完成了.可以实现"类"."构造函数"."继承"(木有实现多继承)."静态方法"."重载"(木有实现多态),对我来说主要的意义就是,我喜欢这种代码风格,可以非常简单的重用和二次开发. 运行效果截图如下: 在线演示地址如下: http://demo.jb5

  • js点击任意区域弹出层消失实现代码

    本文实例为大家分享了js点击任意区域弹出层消失的具体代码,供大家参考,具体内容如下 采用jquery element.parents();判断点击区域是否在弹出层上面或者在按钮上面,否则让弹出层消失. 完整代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head

随机推荐