首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Div高度自动发布

Div高度自动发布
EN

Stack Overflow用户
提问于 2014-02-07 21:28:57
回答 2查看 197关注 0票数 0

我有一个#val容器div,它可以扩展以在名为#cat-container的div中容纳Javascript内容。

cat-container上面有4个标签,编号为1- 4,所以如果你点击1,它将从一个php数组中加载内容,标签2 -3也是如此。

当你点击每个标签时,#val-container成功地伸展到正确的高度,但是我设置了标签1和它的内容在页面加载时默认显示。问题是,所有其他选项卡中的内容都会在页面加载时加载到选项卡1中。

代码语言:javascript
复制
<script type="text/javascript">
var i=1;
var tab;
document.getElementById('cat-container').style.position='relative';
document.getElementById('val-container').style.height='auto';
while(tab=document.getElementById('option'+i+'-body'))
{
    tab.style.position='absolute';
    tab.style.top='0';
    tab.style.left='0';
    i++;
}
var urllocation = location.href; //find url parameter
if(urllocation.indexOf("#") == -1)
{
    displayTab(1);
}
else
{
    if(urllocation.indexOf("#option1")>-1)displayTab(1);
    else if(urllocation.indexOf("#option2")>-1)displayTab(2);
    else if(urllocation.indexOf("#option3")>-1)displayTab(3);
    else if(urllocation.indexOf("#option4")>-1)displayTab(4);
    else displayTab(1);
}
</script>

本质上,我希望选项卡1只显示其内容的页面加载。

这一行就是问题所在:

document.getElementById('val-container').style.height='auto';

因此,如果dispalyTab(1),只显示它的内容!

实际显示选项卡的代码:

代码语言:javascript
复制
 <script type="text/javascript">
function displayTab(num)
{
    var tab,x;
    x=1;
    while(tab=document.getElementById('option'+x+'-body'))
    {
        if(num!=x)tab.style.display='none';
        else tab.style.display='inherit';
        x++;
    }
}
 </script>

 <div class="category-tab" id="aoption1"><a href="#option1" onclick="displayTab(1);return false;">Tab1</a></div>
<div class="category-tab" id="aoption2"><a href="#option2" onclick="displayTab(2);return false;">Tab2</a></div>
<div class="category-tab" id="aoption3"><a href="#option3" onclick="displayTab(3);return false;">Tab3</a></div>
<div class="category-tab" id="aoption4"><a href="#option4" onclick="displayTab(4);return false;">Tab4</a></div>
<br><br>

下面是PHP/HTML:

我使用了表1-4来简化事情,但实际上它们代表了价格范围:

代码语言:javascript
复制
  echo "<div id=\"cat-container\">";
echo '<div id=\"val-contain\">';

 $cats=array(0,1000,5000,10000,100000);
for($ci=1;$ci<count($cats);$ci++)
{
    if($ci==4)echo "<div class=\"category-body\" id=\"option".$ci."-body\"><a   name=\"option".$ci."\"><h3>Gifts for over &pound;100!</h3></a>";
    else echo "<div class=\"category-body\" id=\"option".$ci."-body\"><a name=\"option".$ci."\"><h3>Gifts for under ".fixedToFloatCurrency($cats[$ci])."!</h3></a>";
    $i=0;
    for ($p = 0; $p < count($game); $p++ )
    {
        $game[$p]->getProduct();
        if($game[$p]->price<$cats[$ci] && $game[$p]->price>=$cats[$ci-1])
        {
            if (($i % 3) == 0 )
            {
                if($i)echo "</tr></table>";
                echo "<table id=\"newarrivals\" style=\"padding-top:5px;\"><tr>";
            }

            echo "<td>";
            $game[$p]->getLink();
            echo $game[$p]->link;
            echo "<h2 class=\"section-tab-game2\">".$game[$p]->name."</h2>";
            echo "<div class=\"container\" style=\"text-align:center;\"><div      class=\"image-spacer\">";
            echo $game[$p]->getImage();
            echo $game[$p]->image;
            echo "</div>";
            echo "<div class=\"specialprice\" >";

            if(!is_numeric($game[$p]->price)){
                echo $game[$p]->price;
            }
            else
            {
                if($game[$p]->price < $game[$p]->maxprice)
                {echo "From only: &pound;".fixedtofloat($game[$p]->price);}
                else
                {echo "Only: &pound;".fixedtofloat($game[$p]->price);}
            }
            echo "</div></div></a>";
            echo "</td>";
            $i++;
        }
    }
    echo "</tr></table></div>";
}
echo "</div>";
echo '</div>';
  ?>

CSS:

代码语言:javascript
复制
#val-contain { }
#cat-container {  }
.category-tab { width:125px;border:2px solid white; height: 50px; background:url('images/design-  gac/valentines-navigation.png')0 0 no-repeat;float:left; text-align:center; font-family:Arial,sans-serif;font-size:12pt;font-weight:bold; color:white; padding-top: 7px;}
.category-tab a { color:white; }
.category-tab a:hover { color:#white; }
.category-body { width:515px; border:1px solid #3c2130; height: auto; overflow:hidden; background:url('images/design-gac/valentines-navigation-back.png')0 0 repeat-x;}
.category-body h3 { font-size:27pt; text-align:center; color: #ffffff; font-family: Arial,sans-    serif;}
.container { background-color:white; }
.imgpad { margin-bottom: 10px; }
.vallinks {color: #c50f07; font-weight: bold; }

希望有人能帮上忙?

沃特罗尼

EN

回答 2

Stack Overflow用户

发布于 2014-02-07 21:49:37

这是一个纯html/内联css解决方案,只有一个静态标签。

代码语言:javascript
复制
<body>
    <style>
        html{
            height: 100%;
        }
        body {
            min-height: 100%;
        }
    </style>

    <div style="max-height: 5%;min-height: 5%; background-color: #d9edf7;display: block">

        <div class="category-tab" style="float: left" id="aoption1"><a href="#option1" onclick="displayTab(1);
            return      false;">Tab1</a></div>
        <div class="category-tab" style="float: left" id="aoption2"><a href="#option2" onclick="displayTab(2);
            return false;">Tab2</a></div>
        <div class="category-tab" style="float: left" id="aoption3"><a href="#option3" onclick="displayTab(3);
            return false;">Tab3</a></div>
        <div class="category-tab" style="float: left" id="aoption4"><a href="#option4" onclick="displayTab(4);
            return false;">Tab4</a></div>    
    </div>


    <div style="max-height: 95%;min-height: 95%; background-color: red;display: block">
        Tab 1 content
    </div>

</body>
票数 1
EN

Stack Overflow用户

发布于 2014-02-07 22:07:11

你使用了‘val- id’作为你的div的id

代码语言:javascript
复制
echo '<div id=\"val-contain\">';

但是你正在尝试改变它

代码语言:javascript
复制
document.getElementById('val-container').style.height='auto';

将div的id更改为val-container。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21629015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档