0

IE9 でこの問題の回避策を見つけることができるかどうかを知る必要があります。chrome/firefox で完全に表示されます。値は期待どおりに変更されますが、div はその高さを拡張しません。

このコードは外部の .js ファイルにあり、html に直接配置しようとしましたが、役に立ちませんでした。

ご協力ありがとうございます。コードは次のとおりです。

HTML

<div class="active-collapsed">Some stuff here</div>

CSS

.active-collapsed {height:345px;}
.active-expanded {height:690px;}
#exp-btn {margin-bottom:5px;width:80px;}

jQuery v1.7.2

$(document).ready(function () {

    jQuery('#exp-btn').click(function () {
        $(".active-collapsed").toggleClass("active-expanded");


        if ($(this).val() == "+ profiles") {
            $(this).val("- profiles");
        } else {
            $(this).val("+ profiles");
        }
    });

});  
4

2 に答える 2

0

IE9 で複製されるかどうかはわかりませんが、IE では、CSS 属性を変更するときにトグルが効果的ではないことがわかりました。

要素属性を変更するJS関数にもかかわらず、IE8 v8はDOM要素のクラスを変更しません

したがって、これがあなたに当てはまるかどうかを確認し、それに応じてコードを変更してください。

于 2013-04-23T17:14:17.070 に答える
0

http://jsfiddle.net/4UGck/4/は IE9 で問題なく動作します。私がしたことは、val() を text() に変更し、overflow: hidden を css に追加することだけでした。

$(function(){
    $('#exp-btn').click(function () {
        $(".active-collapsed").toggleClass("active-expanded");


        if ($(this).text() == "+ profiles") {
            $(this).text("- profiles");
        } else {
            $(this).text("+ profiles");
        }
    });

});

そして、CSS

.active-collapsed {height:345px; overflow: hidden;}
于 2013-04-23T17:14:30.233 に答える