2016-10-04 109 views
0

我有一个带有动态内容的“div#区域”,因此div高度也是动态的,我想要的是当它的高度大于650px时添加类“.over”。 我使用这个脚本,它不工作:将类添加到动态高度div

<script> 
    if ($('div#area').height() > 650) { 
     $(this).addClass('over'); 
    } 
</script> 

回答

1

试试这个

<script> 
$(document).ready(function(){ 
    if ($('#area').height() > 650) { 
     $('#area').addClass('over'); 
    } 
}) 
</script> 
+0

谢谢,它的工作原理 – Amee

3

this当你执行addClass语句不指$('div#area')。您可以将参考存储在一个变量中并使用它。

var elem = $('div#area'); //Store a refrence to element 
if (elem.height() > 650) { 
    elem.addClass('over'); 
} 
+0

因为OP采用'this'断章取义,并@Satpal没有。 – Utkanos

+0

谢谢,它也行得通:) – Amee

0
<script> 
    if ($('#area').height() > 650) { 
    $(this).addClass('over'); 
    } 
</script> 
+0

这个解决方案不会作为'$(this)'不会引用'$('div#area')'。 –

1
<script> 
var area = $('div #area'); 
if (area.height() > 650) { 
    area.addClass('over'); 
} 
</script>