首页  韩国资源  酷站加油  我的展厅  设计名站  古典元素  推荐下载  设计欣赏  每周专访  招募精英  人才专区  网页教程  平面设计  编程开发  设计竞赛
当前位置:首页 > 网页教程 > 其它教程 > 正文
Google
超级兔子让浮动层消失的前因后果
来源:Taobao.com UI Team 作者:小马 2007年03月06日 09:24 网友评论:0条 点击:

按此在新窗口浏览图片

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

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

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

上一篇:用shtml来include网页文件(须开启SSI)   下一篇:IE中伪类:hover的使用及BUG
收藏此页】【打印】【关闭
 相关文章  我要点评
·界面的层次感
·PhotoShop制作多层发光字效果
·迅雷起诉超级兔子惹争议
·flash中图层的具体作用
·运用Photoshop CS3图层蒙板做动画
·Adobe网站前端开发——结构层概况
·运用Photoshop图层样式打造金属文字
·用Photoshop图层蒙版制作非主流效果

免责声明:本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请联络:68design#163.com
转载要求:作者及来源信息必需保留。转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印。



关于我们 | 在线反馈 | 广告报价 | 友情链接 | 联系我们 | 免责声明 | 在线投稿 | 网站地图
Copyright © 2003-2007 68design.net, All Rights Reserve 【找网页设计师,当然上网页设计师联盟】