为了账号安全,请及时绑定邮箱和手机立即绑定

关于-9999em来隐藏元素的问题

关于-9999em来隐藏元素的问题

慕妹3146593 2018-12-21 19:15:25
http://www.zhangxinxu.com/stu...看到了大神的代码,想知道为什么要这样来隐藏元素,是有什么好处吗eleLeftMenuTit.store("display", true).addEvent("click", function() {    var eleTarget = $(this.getProperty("data-rel"));    if (eleTarget) {        if (this.retrieve("display")) {            eleTarget.setStyles({                position: "absolute",                left: "-9999em"                });            this.setProperty("title", "展开").getElement(".u").removeClass("u29").addClass("u39");            this.store("display", false);        } else {            eleTarget.setStyle("position", "static");            this.setProperty("title", "收起").getElement(".u").removeClass("u39").addClass("u29");            this.store("display", true);        }        //存储        funStoreDisplay();    }    return false;});
查看完整描述

1 回答

?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

有时候需要一个东西处于非 display: none 状态,但是又要隐藏,就只好设置一个绝对位置,把它放到浏览器容器外面去。如果是一个正的很大的值也可以,但是控制不好会出现滚动条……所以给一个远大于该 DOM 宽度的负值,就能达到目的。


查看完整回答
反对 回复 2019-01-26
  • 1 回答
  • 0 关注
  • 433 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信