【问题标题】:Can I use Jquery to automatically find and set the width and height of a variety of images?可以使用jquery自动查找和设置各种图片的宽高吗?
【发布时间】:2011-07-11 12:23:30
【问题描述】:

我正在使用 Masonry 插件,要让它正确处理图像,您需要在图像标签内设置宽度和高度。所有图像的高度都会有所不同,但宽度将设置为 200 像素。

Jquery 有没有办法检测每个图像的高度并设置它的高度?这样我就不必去设置每个图像的高度。

这有意义吗?

希望有人可以提供帮助!我是 Jquery 的新手。

【问题讨论】:

    标签: jquery height width


    【解决方案1】:

    是的,您可以像这样使用 jquery 自定义选择器:

    //Add custom selector that returns all objects taller than 200px
    //See http://www.bennadel.com/blog/1457-How-To-Build-A-Custom-jQuery-Selector.htm
    $.extend($.expr[':'], {
        over200pixels: function(a) {
            return $(a).height() > 200;
        }
    });
    
    //  Seclect all images taller than 200px
    //  Set height to 200px using .css() method 
    //  See http://api.jquery.com/css/ 
    $('img:over200pixels').css("height","200px");
    

    信用到期:jQuery Tips and Tricks

    在线演示: http://jsfiddle.net/hvq5m/

    【讨论】:

    • 那段代码会做这样的事情吗? php.net/manual/en/function.getimagesize.php我是 jquery 的新手……哈哈。
    • 在我的回答中添加了更详细的描述。代码选择高于 200 像素的图像并将其高度设置为 200 像素。
    • 如果图像是 200px 宽 x 300px 高,我需要脚本来查看它的高度是 300px 并将其设置为它,以便其他图像可以在其下方正确加载。 desandro.com/demo/masonry/docs/#images
    • 您尝试过我发布的解决方案吗?砌体本身似乎可以处理这样的媒体:$(window).load(function(){ $('#wrapper').masonry({ columnWidth: 200 }); });你试过吗?请注意,如果您对这种语言感觉更舒服,也可以使用 php 来调整图像大小
    • 看看这个...jsfiddle.net/ryanjay/fgNMJ 它在 jsFiddle 中工作正常,但在本地或服务器上不能正常工作。也许你可以把你的代码放在需要的地方......就像我说的,Jquery 对我来说是全新的哈。我试图远离 PHP。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多