使用jquery的inview函数

时间:2017-07-18 13:17:12

标签: javascript jquery

我有一个div,里面有一个段落。我想使用jquery只显示段落然后div在视口内 - 为此我使用的是插件。但是,因为段落最初是隐藏的 - 'mydiv'的高度为0且插件未找到,因此该函数永远不会被执行。有人建议解决这个问题吗?

<div class = "mydiv">
    <p> Hide this content </p>
</div>
.mydiv p { display:none; }
//JQuery plugin 
if $(".mydiv").on('inview',function(event,isInView){
       p.show();
}

1 个答案:

答案 0 :(得分:0)

你的jQuery选择器没有按高度查找dom元素完全不关心高度。您可以通过css覆盖高度(&#34; height&#34;,&#34; 10px&#34;)。

jQuery show大致相当于调用.css(&#34; display&#34;,&#34; block&#34;),除了显示属性恢复到最初的状态。

jQuery hide大致相当于调用.css(&#34; display&#34;,&#34; none&#34;),除了显示属性的值保存在jQuery的数据缓存中以便稍后可以将显示恢复到其初始值。如果元素的显示值为内联并隐藏然后显示,则它将再次以内联方式显示。

您的代码也不正确。我想它应该是这样的,不知道目的是什么:

 $(".mydiv").on('inview',function(event,isInView) {
           p.show();
 }); // Do not use if statement