我有一个切换脚本,通过单击按钮来显示列表的高度。 问题是,它适用于1.8.3下的jQuery。但是我的网站目前使用的是2.1.4,那么脚本有什么问题呢?
$(document).ready(function() {
var $dscr = $('#oplist'),
$switch = $('#opbutton'),
$initHeight = 100; // Initial height
if( $dscr.height() <= $initHeight ) {
$switch.hide();
}
$dscr.each(function() {
$.data(this, "realHeight", $(this).height()+20); // Create new property realHeight
}).css({ overflow: "hidden", height: $initHeight + 'px' });
$switch.toggle(function() {
$dscr.animate({ height: $dscr.data("realHeight") }, 100);
$switch.text('show less');
},
function() {
$dscr.animate({ height: $initHeight}, 100);
$switch.text('show all');
});
});
非常感谢您提前:))
答案 0 :(得分:1)
https://api.jquery.com/toggle-event/
注意:此方法签名在jQuery 1.8中已弃用,在jQuery 1.9中已删除。 jQuery还提供了一个名为.toggle()的动画方法,可以切换元素的可见性。是否触发动画或事件方法取决于传递的参数集。
您现在需要实现自己的切换方法。
$switch.on("click", function () {
var isActive = !!$(this).data("active");
$(this).data("active", !isActive);
if (isActive) {
//active steps
} else {
//not active steps
}
});