javascript
  • html
  • angularjs
  • 2017-08-09 77 views 0 likes 
    0

    我目前正在研究角度js和我有一個問題,在圖像的高度設置div中的最小高度...順便說一下,我在li中使用ng-repeat。這是我的代碼:如何通過角度js中圖像的最小高度來設置列表中圖像的高度?

    app.directive("cardListStyle01",function(){ 
        return { 
         template: ` 
          <li class='contentContainer02 card' ng-repeat='d in data'> 
           <div class='imageBlock'> 
            <div class='logo'><img src='/images/img0{{$index%5+1}}.jpg' alt=''></div> 
            <h3 class='cardTitle cWhite'>{{d.name}}</h3> 
           </div> 
           <div class='cardContentBlock'> 
            <p class='cardPar'>{{d.employeeNum}}</p> 
           </div> 
          </li> 
         ` 
        } 
    }) 
    

    我想要的是例如:

    img1 height = 200px. img2 height = 100px. img3 height = 90px. img4 height = 260px. img5 height = 120px.

    運行的代碼之後,IMG高度將成爲90

    img1 height = 90px img2 height = 90px img3 height = 90px img4 height = 90px img5 height = 90px

    我該怎麼辦呢? 另外,如何選擇角js中的元素,如選擇jQuery中的元素? 謝謝你的迴應。

    回答

    1

    這將選擇類'.my-image'的所有項目。

    var images = document.querySelectorAll('.my-image'); 
    

    然後找到最低:

    var minHeight = images[0].offsetHeight; 
    images.forEach(function(item){ 
        minHeight = Math.min(minHeight, item.offsetHeight) 
    }) 
    

    然後,只需將高度設置爲所有元素:

    images.forEach(function(item){ 
        angular.element(item).css({ 
         height: minHeight + 'px' 
        }); 
    }) 
    

    如果它不能正常工作使用$超時後的HTML執行這些操作被加載:

    $timeout({ 
        // all the code above 
    }) 
    
    +0

    在哪裏shoud我把這個c頌?在控制器或指令? –

    +0

    在控制器中,通常 – Maxwellt

    +0

    我嘗試這個選擇器,但它不工作。 var images = angular.element(document.querySelector('。card img'));我做錯了什麼? –

    相關問題