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

问div变化高度
EN

Stack Overflow用户
提问于 2015-09-02 17:55:46
回答 1查看 69关注 0票数 1

我在一个面板里有3个div。如何改变每个div的高度?到目前为止,我做的是在一个div上工作,但我需要它在所有三个。这是我的密码:

代码语言:javascript
复制
       function changeheight(_this) {

        var thisText = $(_this).text() ;
        var curHeight = $('.tab-panel div').height();
        $('.tab-panel div').css('height', 'auto');
        var autoHeight = $('.tab-panel div').height();
        $('.tab-panel div').css('height', curHeight + 'px');
        if (thisText == 'Pročitaj više') {

            $('#tab-1,.tab-panel div').animate({
                'height': autoHeight + "px"
            }, 600);
            $(_this).text((thisText  == 'Sakri sadržaj') ? 'Pročitaj više' : 'Sakri sadržaj');
            $(_this).prepend('<img id="theImg" src="Slicice/open.png" />');
        }
        else if (thisText  == 'Sakri sadržaj') {

            $('#tab-1,.tab-panel div').animate({
                'height': '276px'
            }, 600);

            $(_this).text((thisText  == 'Sakri sadržaj') ? 'Pročitaj više' : 'Sakri sadržaj');
            $(_this).prepend('<img id="theImg" src="Slicice/close.png" />');
        }
        return false;
    };

还有html。在我的例子中,id tad-1和tab-2的Divs已经溢出,但是我并没有把所有的文本都放在这个html中。我要让这三个人都能用上:

代码语言:javascript
复制
                <div id="tab-1" class="tab-panel active" >
                    <div >
                        LETO 2015: ALNJA<br><br>
                        Alanja - grad sa mnogo različitih lica. Ovaj grad, smešten u istočnom delu turske obale, 
                        odlikuju veoma izraženi kontrasti. Duge peščane plaže i hladne planinske reke, 
                        drevne ruševine iz rimskog doba i moderni hoteli, Orijent i Evropa na jednom mestu. 
                    <div class="margin-top16px">*Kompletan cenovnik za sve hotele u ponudiagencije pogledajte klikom na:<a href="#">Hellena travel - Alanja leto 2015.</a></div>
                    </div>

                            <a href="javascript:void(0);" onclick="return changeheight(this);" class="morelink"><img src="Slicice/close.png" id="close">Pročitaj više</a>

                    </div>
                    <div id="tab-2" class="tab-panel" >
                        <div>Alanja - grad sa mnogo različitih lica. Ovaj grad, smešten u istočnom delu turske obale, 
                        </div>
                            <a href="javascript:void(0);" onclick="return changeheight(this);" class="morelink"><img src="Slicice/close.png">Pročitaj više</a>
                    </div>
                    <div id="tab-3" class="tab-panel" >
                        <div>Alanja - grad sa mnogo različitih lica. Ovaj grad, smešten u istočnom delu turske obale, 
                    </div>

                            <a href="javascript:void(0);" onclick="return changeheight(this);" class="morelink"><img src="Slicice/close.png">Pročitaj više</a>
                    </div>
               </div>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-02 18:19:10

问题在onclick="return changeheight(this);"中,在本例中,您使用参数中的链接运行函数。尝试删除onclick事件并使用以下代码:

代码语言:javascript
复制
    $('.tab-panel a.morelink').on('click',function () {
        var thisText = $(this).text(),
            curDiv = $(this).closest('.tab-panel').find('div');
            curHeight = curDiv.height();
        curDiv.css('height', 'auto');
        var autoHeight = curDiv.height();
        curDiv.css('height', curHeight + 'px');
        console.log(curHeight, autoHeight)
        if (thisText == 'Pročitaj više') {

            curDiv.parent('.tab-panel').andSelf().animate({
                'height': autoHeight + "px"
            }, 600);
            $(this).text((thisText  == 'Sakri sadržaj') ? 'Pročitaj više' : 'Sakri sadržaj');
            $(this).prepend('<img id="theImg" src="Slicice/open.png" />');
        }
        else if (thisText  == 'Sakri sadržaj') {

            curDiv.parent('.tab-panel').andSelf().animate({
                'height': '276px'
            }, 600);

            $(this).text((thisText  == 'Sakri sadržaj') ? 'Pročitaj više' : 'Sakri sadržaj');
            $(this).prepend('<img id="theImg" src="Slicice/close.png" />');
        }
        return false;
    });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32360036

复制
相关文章

相似问题

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