【问题标题】:Get variable resizing image width and height with jquery使用jquery获取可变大小的图像宽度和高度
【发布时间】:2012-12-19 19:50:43
【问题描述】:

我有一个在加载和调整窗口大小时运行的函数。我想在将其调整为另一个变量后使用新值。我没有得到值的尺寸部分​​。

$(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. 
        }

【问题讨论】:

    标签: jquery resize


    【解决方案1】:

    如果您尝试使用容器缩放图像,有一种比在调整窗口大小时重新计算宽度/高度更简单的方法,这是fluid layout 理念的一部分。

    基本上,您将图像设置为max-width: 100%;,它们将随着容器的大小而缩放。

    不确定这是否是您的意图,但它不是 js。查看链接了解更多详情。

    在调整大小后获取图像的大小:

    您可以将大小保存在全局变量中,只需删除var:(不推荐)

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

    或者您可以简单地使用 jquery 再次查询元素的高度:

    var xWidth = $("#images").width() * 2;
    var xHeight = $("#images").height() * 3; 
    

    【讨论】:

    • 如果屏幕调整大小,图像大小会自动调整。屏幕也可以有大有小。我只是得到图片缩放的值,接下来我要使用另一个函数。我得到下一个缩放的图像值。谢谢扎卡里。
    猜你喜欢
    • 2012-04-04
    • 1970-01-01
    • 2021-05-06
    • 1970-01-01
    • 1970-01-01
    • 2013-10-16
    • 2010-11-18
    相关资源
    最近更新 更多