js修改display,在none和block之间切换不显示问题

                

目的:这是我的目的,要实现的效果

点击 回复a链接  ,输入框input所在父元素div,显示或隐藏。

input>div>div(这个最外层div,对应着问题一,和问题二无关)

问题一:display属性值修改成功不显示

一个div,初始属性值为:display:none;

通过点击某a链接,调用某js函数,修改其display值为block;

成功!但页面不显示。

*解决:其父元素设置最小高度,使其包含这个div

问题二:dislay属性值通过js函数切换,js里属性改变成功,页面没渲染

(切换前判断display属性值,赋予另一个值)

div的初始属性值为:display:none;

js函数第一次读取该元素的display值为"",没错~空白,不是none;

这时作者通过  元素.style.display="block",企图改变display的属性值;

成功!!  但……页面没显示,F12看该div元素,display值仍为none;

这时作者不得不百度,发现还有jquery的方法可以改变display的属性值。

          $("选择器").show();//表示display:block

Ok! 显示出来了,页面也成功了……                                                 

还没结束!!!!-------------------------------------------------------->从display:none到display:block(概括上面的内容)

再点击该超链接,调用该js函数,企图关闭显示,.让它display:none;时,页面又失效了,还是js成功,页面失效!

这时候用jquery的方法

         $("选择器").hidden();表示display:none

         没用!!!!

         必须用切换函数 $("选择器").toggle();      才能成功!!!

Ok!解决一轮切换

还没结束!!!!-------------------------------------------------------->从display:block到display:none(概括上面的内容)

        再一轮时,这时候元素已经隐藏,要让它显示

        这时候的display值不再是第一次的""空白,而是none!!!   display=none;

        判断条件需要将两种情况都考虑。

 

 

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值