js 获取div的类及js控制图片垂直居中

js没有document.getElementByClassName 这个方法,只能通过id控制,那就简单的写个方法获取class的方法。代码如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>app_details</title>
<meta name="description" content="" />
<meta name="keywords" content="" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<link rel="stylesheet" href="http://res.smzdm.com/phone/app_details.css" type="text/css" /> 
<script>
    function getElementsByClassName(n){
        var classElements = [],
            allElements = document.getElementsByTagName("*");
        for( var i = 0;i<allElements.length;i++){
            if(allElements[i].className == n){
                classElements[classElements.length] = allElements[i];
            }
        }
        return classElements;
    }
window.onload = function(){
    var siteBoxClassName = getElementsByClassName("site_box");
    var sitePicClassName = getElementsByClassName("site_pic");
    for(var j = 0;j<siteBoxClassName.length;j++){
        var siteBoxHeight = siteBoxClassName[j].offsetHeight;
        var proPicHeight = sitePicClassName[j].offsetHeight;
        var top = (siteBoxHeight - proPicHeight) / 2;
        if( proPicHeight < siteBoxHeight ){
            sitePicClassName[j].id ="site-pic" + j;
            document.getElementById("site-pic" + j).style.marginTop = top + "px";
        }
    }

}
</script>
</head>

<body>
    <div class="details_box" id="details_box">
        <div class="site_haitao_wrap">
            <div class="site_box">
                <a  class="site_pic" href="#"  target="_blank"  rel="nofollow" >
                    <img src='http://img10.360buyimg.com/n1/jfs/t196/4/638907024/362418/5491ea74/5392fea0N1880f026.jpg' src1='http://img10.360buyimg.com/n1/jfs/t196/4/638907024/362418/5491ea74/5392fea0N1880f026.jpg' src2='http://img10.360buyimg.com/n1/jfs/t196/4/638907024/362418/5491ea74/5392fea0N1880f026.jpg'  class="proPic"  >
                </a>
                <div class="site_info">
                    <a class="site_title"  target="_blank" href="#" rel="nofollow" >Gucci 古驰 Rush 狂爱 女士EDT淡香水 75ml322元包邮,新用户另95折还送CK唇彩</a><div class="site_price"><i class="icon"></i><span class="red">¥128.00</span>亚马逊中国</div><div class="grey">1080入1100出在1755之前,我主要用18-70,挂机狗头,这支头和18-55 18-105之间的比较也一直没停过,其实这3个我都用过,简单的评价就是,这就是一个头,剩下的都得靠你自己,真正的区别还真不是态度大,可能还是18-105带个防抖好用点。</div>
                </div>
            </div>
        </div>

        <div class="site_haitao_wrap">
            <div class="site_box">
                <a  class="site_pic" href="#"  target="_blank"  rel="nofollow" >
                    <img src='http://img10.360buyimg.com/n1/jfs/t196/4/638907024/362418/5491ea74/5392fea0N1880f026.jpg' src1='http://img10.360buyimg.com/n1/jfs/t196/4/638907024/362418/5491ea74/5392fea0N1880f026.jpg' src2='http://img10.360buyimg.com/n1/jfs/t196/4/638907024/362418/5491ea74/5392fea0N1880f026.jpg'  class="proPic"  >
                </a>
                <div class="site_info">
                    <a class="site_title"  target="_blank" href="#" rel="nofollow" >75ml322元包邮,新用户另95折还送CK唇彩</a><div class="site_price"><i class="icon"></i><span class="red">¥128.00</span>亚马逊中国</div><div class="grey">剩下的都得靠你自己,真正的区别还真不是态度大,可能还是18-105带个防抖好用点。</div>
                </div>
            </div>
        </div>

    </div>
</body>
</html>

 

posted @ 2014-12-19 14:25  乖鱼头  阅读(397)  评论(0编辑  收藏  举报