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

问题,问题?

<script type="text/javascript">

    //查找id = div3的DOM元素,是否隐藏

    show($('#div3:hidden'));

    </script>

div3是被隐藏掉了,那他的div3:hidden的长度不就是1吗,为什么显示为0?

 <script type="text/javascript">

    //查找id = div3的DOM元素,是否可见

    show($('#div3:visible'));

    </script>

div3是被隐藏掉了,那他的div3:visible的长度不就是0吗,为什么显示为1?

正在回答

4 回答

if判断条件中如果是布尔类型的值,也就是说只有两种情况的时候trueORfalse的情况时,可以不用==true或者==false,直接写变量名就可以了6.31append?

0 回复 有任何疑惑可以回复我~

jq判断是不是隐藏是看你占不占元素的空间 左边有说明 你看下----

如果元素中占据文档中一定的空间,元素被认为是可见的。
可见元素的宽度或高度,是大于零。
元素的visibility: hidden 或 opacity: 0被认为是可见的,因为他们仍然占用空间布局。

所以第三个是可见的 因为他的隐藏只是让你看不见  实际上还是存在的 前两个一个是直接none 没掉了  一个是宽高为0 所以第二个虽然能看见内容 但是是不可见的 因为那是内容溢出的 实际上元素是没有占空间的

0 回复 有任何疑惑可以回复我~

那个是css 样式隐藏元素哦,

0 回复 有任何疑惑可以回复我~

你理解反了, 首先div3是显示的, show($('#div3:hidden'));和show($('#div3:visible'));并不是表示他被隐藏了, 而是选择id='div3'的隐藏和显示元素, 那么,show($('#div3:hidden'));是没有选择到隐藏的元素的,所以长度是0.反之毅然

0 回复 有任何疑惑可以回复我~
#1

夜阑卧听风吹雨y 提问者

<p id="div3" style="visibility:hidden;opacity:0">visibility</p>不可见 这是div3的样式,我们有几种方式可以隐藏一个元素: 1、CSS display的值是none。 2、type="hidden"的表单元素。 3、宽度和高度都显式设置为0。 4、一个祖先元素是隐藏的,该元素是不会在页面上显示 5、CSS visibility的值是hidden 6、CSS opacity的指是0 既然这样为什么div3是显示的而不是隐藏的。
2018-07-02 回复 有任何疑惑可以回复我~
#2

superlee_ss 回复 夜阑卧听风吹雨y 提问者

时隔一年 我还是得回复你..好好看文章啊... 如果元素中占据文档中一定的空间,元素被认为是可见的。 可见元素的宽度或高度,是大于零。 元素的visibility: hidden 或 opacity: 0被认为是可见的,因为他们仍然占用空间布局。
2019-10-21 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
jQuery基础 (一)—样式篇
  • 参与学习       217511    人
  • 解答问题       1218    个

jQuery初入开启样式修炼,体验万能的jQuery样式集搭建网站布局

进入课程

问题,问题?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信