我从浏览器获得的高度我想将它应用到每个类

时间:2014-01-30 00:08:36

标签: javascript html

所以就像我希望每个div都有浏览器的高度...我做了但只使用.getelementby但是当我尝试使用.getelementsbyclassnames时它不起作用因为根据它带回类的数组,所以我尝试给索引只能使用一个索引...这里`输入代码

<script type="text/javascript">
  window.onload = function() {
    var height = getViewportHeight();
    var strl = document.getElementsByClassName("full") [0],[1];



    if(height > 0)
      strl.style.height = height + "px";
  }

  function getViewportHeight() {
    var h = 0;

    if(self.innerHeight)
      h = window.innerHeight;
    else if(document.documentElement && document.documentElement.clientHeight)
      h = document.documentElement.clientHeight;
    else if(document.body) 
      h = document.body.clientHeight;

    return h;
  }
</script>

2 个答案:

答案 0 :(得分:1)

使用JavaScript: 注意:我的上一个解决方案无效,因为我使用的是for each。我了解到for each仅适用于数组而不适用于节点列表。 getElementsByClassName返回一个NodeList,因此你不能使用foreach循环

    var height = 10;
    var tests = document.getElementsByClassName('full');
    for (var i=0;i<tests.length;i++){
        tests[i].style.height = height+"px";
    }

使用Jquery:

 var height = getViewportHeight();
 $(".full").css("height",height+"px");

答案 1 :(得分:1)

试试这个:http://jsfiddle.net/chace/5UXqV/29/

第一部分是jQuery,所以你需要在标题中包含jQuery库。

$(document).ready(function() {
    var height = getViewportHeight();
    console.log(height);
    $("div.full").each(function () {
        $(this).height(height);
    })
});