2016-10-04 133 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>