0

我有这样的设计:

<img class="imgtest" src="img.png" onload="scaleimg(event)" />

现在,我想在重新调整窗口大小时scaleimg(event)再次调用函数,因为图像有类。.imgtest

我已经尝试过,但它不起作用。

$(window).resize(function() {
     $("img").one('load', function(){
         scaleimg(event);
     });
    });

帮我修一下。谢谢你的帮助。

4

2 回答 2

2

您应该避免使用内联 javascript - 对于您的问题,您可以scaleimg()在 DOM 准备好时运行一次,然后在窗口上触发 resize 事件时再次运行:

$(document).ready(function() {
    // When DOM is ready, go through each <img> with the class '.imgtest'
    $('img.imgtest').each(function() {
        scaleimg(event);
    });

    // Listen to resize event on $(window)
    $(window).resize(function() {
        $('img.imgtest').each(function() {
            scaleimg(event);
        });        
    });
});

更好的是,.resize()当 DOM 准备好时,您可以通过链接再次触发,从而为自己节省几行代码:

$(document).ready(function() {
    // Listen to resize event on $(window)
    $(window).resize(function() {
        $('img.imgtest').each(function() {
            scaleimg(event);
        });        
    }).resize();  // Notice the chaining
});
于 2013-10-09T19:45:41.877 回答
0

您只能尝试这样做

$(window).resize(function() {
         scaleimg();
    });
于 2013-10-09T19:41:34.433 回答