Javascript图像调整大小

Javascript图像调整大小,javascript,Javascript,我想根据CSS和JS函数中的图像大小调整图像大小,JS函数获取div中的所有图像,但我面临getelement by tagname的问题,我必须将图像样式设置到img HTML标记中,否则它永远无法工作,在这个测试项目中,它很容易做到,但在我的真实项目中,这个div和许多页面中有许多图像,所以这里有函数和它的HTML <script type="text/javascript"> function x() { var yourdiv = document.getElemen

我想根据CSS和JS函数中的图像大小调整图像大小,JS函数获取div中的所有图像,但我面临getelement by tagname的问题,我必须将图像样式设置到img HTML标记中,否则它永远无法工作,在这个测试项目中,它很容易做到,但在我的真实项目中,这个div和许多页面中有许多图像,所以这里有函数和它的HTML

<script type="text/javascript">
function x() {
    var yourdiv = document.getElementById('test');
    var yourImgs = yourdiv.getElementsByTagName('img');
    for (var i = 0; i < yourImgs.length; i++) {
        if (yourImgs[i].style.height == '1000px' && yourImgs[i].style.width == '1000px')
          {
               yourImgs[i].style.height = '700px';
                yourImgs[i].style.width = '800px';
          }
        else
          {
             yourImgs[i].style.height = '400px';
                yourImgs[i].style.width = '300px';
          }

    }
}
window.onload= x;
</script>
</head>
   <body>
      <div  id="test">
         <img alt=''  class="test_img" style="height:1000px;width: 1000px;"   src='imges/book1.jpg' />
         <img alt='' class="test_img" style="height:1000px;width: 1000px;"  src='imges/book2.jpg' />
      </div>

忽略样式,只检查高度和宽度,如本例所示:


在这里,当我将它放入一个JSFIDLE中时,它似乎工作得很好:。在您的代码示例中,else{}块从未执行过,因为if中的条件对于您的代码来说总是正确的!?如果下载后需要将IMG标记重置为真实图像大小,只需执行以下操作:.style.width=。身高=;我看到了这里的问题:yourImgs[I].style.height和yourImgs[I].style.width如果不是内联样式,就永远不会得到值。这就是他所说的问题。
function x() {
    var yourdiv = document.getElementById('test');
    var yourImgs = yourdiv.getElementsByTagName('img');
    for (var i = 0; i < yourImgs.length; i++) {
        if (yourImgs[i].height == 1000 && yourImgs[i].width == 1000)
          {
               yourImgs[i].style.height = '700px';
                yourImgs[i].style.width = '800px';
          }
        else
          {
             yourImgs[i].style.height = '400px';
                yourImgs[i].style.width = '300px';
          }

    } } window.onload= x;