1

我有从 php 动态加载图像的页面。图像高度是各种 px 大小(70,130,100,60)。我需要的是如何在警报框中自动获取当前在页面中查看的图像大小我尝试相同的代码不起作用。请帮助

代码

<?php
foreach ($images as $image) { 
    ?>
<img src="<?php echo $image['url']; ?>" class="img_test" id="<?php echo $image['url']; ?>" width="70" style="max-height:70px" onclick="imagesize(this)" />
<?php
}?>

<script>
       $( window ).load(function() {

        $( ".img_test" ).each(function( index ) {
            alert('Height: '+$(this).height());
        });
       });
       function imagesize(obj){
           alert($(obj).height());
       }
</script>

如果我们点击图片高度会显示。在页面加载后自动无法显示

4

1 回答 1

2

重要的是要了解它是加载图像的导航器(客户端),PHP 正在运行到您的服务器并将文本发送到客户端。

使用侦听.on器获取事件“点击”。

此外,使用$(document).ready而不是 .load 等待图像加载

<?php foreach ($images as $image) { ?>
    <img src="<?php echo $image['url']; ?>" class="img_test" id="<?php echo $image['url']; ?>" width="70" style="max-height:70px" />
<?php } ?>


$(document).ready(function(){
    $( ".img_test" ).each(function(){
        alert('Height: '+$(this).height());
    });

    $(".img_test").on("click", function(){
           alert($(this).height());
    });
});

http://jsfiddle.net/3c9CN/

于 2013-09-27T10:34:00.223 回答