0

このスクリプトを正しく動作させるのに苦労しています:

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

私がやろうとしているのは、常にスクロールバーを追加することなく、ライトボックスの高さを 330px に制限することです。ライトボックスにスクロールを追加するために、コンテンツが 330px より大きい場合、クラス ('addScroll' //これは単にオーバーフロー y:scroll css に関するものです) を追加しています。

誰でも助けることができますか?

ありがとうジョー

4

3 に答える 3

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');
});
于 2012-09-12T17:03:00.780 に答える
1

これを変える:

$(window).(function(){

に:

$(window).load(function(){
于 2012-09-12T17:05:28.983 に答える
0

とにかく高さを取得する意味がなくなる前に、ドキュメント対応イベントがトリガーされるまで待つ必要があると思います。これはで行うことができます$(document).ready(function() { ... })

于 2012-09-12T17:04:13.493 に答える