根据元素高度添加类 - jquery

时间:2012-09-12 17:01:22

标签: jquery

我很难让这个脚本正常工作:

$(window).(function(){
var maxHeight = 330;
if  (maxHeight < 331)
$('.ui-lightbox-mid').addClass('addScroll');
else 
$('.ui-lightbox-mid').removeClass('addScroll'); 
});

我要做的是将灯箱限制在330px高,而不是一直添加滚动条。当内容大于330px时,我正在添加一个类('addScroll'//只是overflow-y:滚动css),以便向滚灯箱添加滚动。

有人可以帮忙吗?

感谢 乔

3 个答案:

答案 0 :(得分:3)

$(window).function(){ .. })不是合适的结构。而不是使用:

$(window).load(function() { .. })

但是以适当的 jQuery 方式:

$(document).ready(function() { .. })

$(function() { .. })

完整代码

$(document).ready(function() {
    var maxHeight = 330,
        lightbox = $('.ui-lightbox-mid'), // caching reference
        lightboxHeight = lightbox.height(); // get the current height
                                            // of lightbox, to compare
                                            // with maxHeight

    if ( maxHeight < lightboxHeight ) 
       lightbox.addClass('addScroll');
    else 
       lightbox.removeClass('addScroll');
});

答案 1 :(得分:1)

改变这个:

$(window).(function(){

为:

$(window).load(function(){

答案 2 :(得分:0)

我认为您应该等到触发文档就绪事件,然后无论如何都无法检索高度。这可以使用$(document).ready(function() { ... })

完成