0

ロードとウィンドウのサイズ変更時に実行される関数があります。別の変数にサイズ変更した後、新しい値を使用したい。値のサイジング部分を取得できませんでした。

$(window).load(function(){
           var a=imageSize();
           getResizeImageWidthHeight(a);
            otherFunction();    
        });
        $(window).resize(function(){
            imageSize();

        });

画像のサイズ変更

var imageSize =function() {
            var status='0';
            if( $(window).width()-300 > $(window).height() ) {
                $('#images').css({
                    'width': 'auto',
                    'height': ( $(window).height() )+'px'
                });
                status='1';
            }
            else {
                $('#images').css({
                    'width': ( $(window).width() )+'px',
                    'height': 'auto'
                });
                status='2';
            }
            return status;

        }

画像の幅と高さのサイズ変更を取得する

function getResizeImageWidthHeight(a) {
           x=a;
           if(x=='1') {
                    $("#images").load(function() {
                        imgWidth = this.width;
                        alert( "imgWidth: " + imgWidth );
                    });
                var imgHeight = $("#images").height();

            } else if(x=='2') {
                    $("#images").load(function() {
                        var imgHeight = this.height;
                    });
                var imgWidth = $("#images").width();
                alert( " imgHeight: " + imgHeight);
            } 
        }

および関数の使用

function otherFunction() {
            var xWidth=imgWidth*2;
            var xHeight=imgHeight*3;
            .
            .
            etc. 
        }
4

1 に答える 1

0

コンテナーを使用して画像をスケーリングしようとしている場合、ウィンドウのサイズが変更されたときに幅/高さを再計算するよりも簡単な方法があります。これは、流動的なレイアウトのアイデアの一部です。

基本的に、画像を に設定するmax-width: 100%;と、コンテナのサイズに合わせてスケーリングされます。

これがあなたの意図であるかどうかはわかりませんが、js が少ないです。詳細については、リンクを確認してください。

サイズ変更後の画像のサイズを取得するには:

:を削除するだけで、サイズをグローバル変数に保存できますvar(推奨されません)。

imgHeight = $("#images").height();
imgWidth = $("#images").width();

または、jquery を使用して要素の高さを再度クエリすることもできます。

var xWidth = $("#images").width() * 2;
var xHeight = $("#images").height() * 3; 
于 2012-12-19T19:56:37.210 に答える