jquery图像宽度和高度不适用于IE

时间:2013-02-07 11:04:38

标签: jquery asp.net explorer document-ready

<script type="text/javascript">
     $(document).ready(function () {

         $("#aspnetForm img").load(function () {
             $(this).width(64);
             $(this).height(64);
         });
     });
</script>

 <asp:TemplateField>
                <ItemTemplate>
                <img alt="" runat="server" class="pic" style="cursor:pointer" src='<%# StripHTML(Eval("cat_img").ToString()) %>'  />
                </ItemTemplate>
                </asp:TemplateField>

它适用于Chrome,但不适用于IE。请帮我。我的图片是数据库中的<p> <img src=....> html标记。我清除了striphtml方法。

4 个答案:

答案 0 :(得分:0)

尚未在ready事件使用$(window).load()上加载图片 在ready上只加载了DOM结构,但没有加载真实图像。 这就像你有img标签但不是文件


好的,你的问题完全不同,你正在寻找这个,我的错误 你只想迭代一些图像并使它们64x64应该工作

$(document).ready(function () {
    $("#aspnetForm img").each(function () {
         $(this).width(64).height(64);
    });
});

$(document).ready(function () {
    $("#aspnetForm img").each(function () {
        $(this).css({width:64+'px',height:64+'px'});
    });
});

如果你想获得每张图片的宽度,你应该等待img加载

 $(window).load(function () {
     var width, height;
     $("#aspnetForm img").each(function () {
         width = $(this).width();
         height = $(this).height();
         //store the current img width or height or do whatever
     });
 });

答案 1 :(得分:0)

请改为尝试:

$(document).ready(function () {
    $("#form img").css({"height":"64px","width":"64px"});
});   

小提琴:http://jsfiddle.net/devWaleed/6eas3/4/

答案 2 :(得分:0)

不要使用.load(),不推荐使用。

试试这个,应该适用于所有浏览器:

$(document).ready(function() {
    $('#aspnetForm img').css('width', '64px')
                        .css('height', '64px');
});

答案 3 :(得分:0)

试试这个:

参考:http://api.jquery.com/load-event/

$(document).ready(function() {
    $("#aspnetForm img").load(function() {
        alert($(this).height());
        alert($(this).width());
    });
});

以下是另一种方法: DEMO

function imageSize(img){
   var theImage = new Image();
   theImage.src = img.attr('src');
   var imgwidth = $(img).width();
   var imgheight = $(img).height();

   alert(imgwidth);
   alert(imgheight);
}

$('img').each(function(){
    var imgsrc = jQuery(this);
    imageSize(imgsrc);
});