由于切换已被弃用,因此我使用此命令来搜索div:
$("#syndicates_showmore").on("click", function () {
if (!clicked) {
$('#syndicates').fadeTo('slow', 0.3, function () {
$(this).css(
{
'height': 'auto',
'overflow': 'none'
});
}).fadeTo('slow', 1);
setTimeout(function () {
$("#syndicates_showmore").text("Show less");
}, 500);
clicked = true;
}
else {
$('#syndicates').fadeTo('slow', 0.3, function () {
$(this).css(
{
'height': '290px',
'overflow': 'hidden'
});
}).fadeTo('slow', 1);
setTimeout(function () {
$("#syndicates_showmore").text("Show more");
}, 500);
clicked = false;
}
});有没有更干净的方法来做这件事?
发布于 2013-11-05 02:55:09
函数.toggle(
,function,... )已删除
这是.toggle()的“点击一个元素即可运行指定函数”的签名。它不应该与.toggle()的“更改元素的可见性”相混淆,后者并未被弃用。前者正在被移除,以减少混淆并提高库中模块化的可能性。jQuery Migrate插件可用于恢复功能。
换句话说,您仍然可以像这样使用.toggle:
var clicked = false;
$("#syndicates_showmore").on("click", function () {
clicked = !clicked;
var showText = "Show " + (clicked ? "more" : "less");
$('#syndicates').toggle(function () {
$("#syndicates_showmore").text(showText);
});
});发布于 2013-11-05 02:54:52
最好的选择是使用.toggleClass()
$("#syndicates_showmore").on("click", function () {
$('#syndicates').toggleClass("newClass, 1000", "easeInOutBounce")
});描述:根据类的存在或开关参数的值,在匹配元素集中的每个元素中添加或删除一个或多个类。
如果使用jQuery UI,则可以使用不同的缓动选项轻松地为其设置动画。
缓动功能指定动画在动画中的不同点上进行的速度。jQuery UI提供了几个附加的缓动功能,范围从swing行为的变化到自定义效果(如弹跳)。
发布于 2013-11-05 02:57:19
$("#clickme" ).click(function() {
$( "#book" ).toggle( "slow", function() {
// Animation complete.
});
});https://stackoverflow.com/questions/19774843
复制相似问题