需要知道是否有可能在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");
}
});
});
答案 0 :(得分:0)
不知道它是否在IE9中复制,但在IE中我发现切换在修改CSS属性时无效。
IE8 v8 not changing class for a DOM element despite JS function changing the element attribute
因此,请检查这是否适用于您并相应地更改您的代码。
答案 1 :(得分: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;}