jQuery Slidetoggle + 旋转

Posted

技术标签:

【中文标题】jQuery Slidetoggle + 旋转【英文标题】:jQuery Slidetoggle + rotate 【发布时间】:2013-03-10 13:05:53 【问题描述】:

您好,我正在尝试这样当您单击一个课程时,它会滑动切换另一个课程并旋转您刚刚单击的课程。我的代码做了所有这些,但如果我再次点击它就不会旋转回来。

/* Category Description Toggle */
$('.category-desc').css("display", "none");
$(".category-desc-toggle").addClass("close");

$(".category-desc-toggle").click(function() 
$('.category-desc').slideToggle(300);
if($('.category-desc-toggle').hasClass('close'))
$(this).transition( rotate: '45deg' );
$('.category-desc-toggle').removeClass('close').addClass('open');
;
if($('.category-desc-toggle').hasClass('open'))
$(this).transition( rotate: '0deg' );
$('.category-desc-toggle').removeClass('open').addClass('close');
;

);

我做错了什么?

提前致谢!

【问题讨论】:

您使用哪个插件进行旋转? 【参考方案1】:

这应该可以工作

$(".category-desc-toggle").click(function() 
    $('.category-desc').slideToggle(300);
    $(this).transition( rotate: '45deg' );
);

【讨论】:

不,那没用。好吧,我认为在 jQuery 中设置 display none 更好,因为你得到了太多的 CSS 代码,你不记得为什么 display none 在那里。我还清理了我的代码,以尽可能多地进行 LESS 编码。因为如果您在 CSS 中删除该显示,则 jQuery 将停止工作。感谢罗尼的回复。 另外,请确保您的转换插件正确加载,...我没有任何经验。但是我尝试使用切换(在我的代码中)更改转换( ( 你编写的代码,和我的代码一样,但我试图让你点击的类旋转回原来的姿态。【参考方案2】:

html 文档的 .category-desc-toggle 中添加 onclick="count_click_desc=(count_click_desc+1)%2;"

$(".category-desc-toggle").click(function() 
$('.category-desc').slideToggle(300);
if(count_click_desc)
    $(this).transition( rotate: '45deg' );
;
if(!count_click_desc)
    $(this).transition( rotate: '-45deg' );
;
);

再次,它应该工作,我没有安装过渡插件,懒得下载它......所以,我不确定它是否能工作......实际上,我之前没有正确阅读过你的问题。如果解决了,请点击+1

【讨论】:

让我们将所有内容保存在同一个文件中,我更新了我的代码。现在每次我点击元素时它都会做一些事情。但它不会停留在那个位置。 我不知道整个场景..我只知道你标记的部分,它应该做它的工作..如果不做......我投降..也尝试改变 -45deg到 315 度(只是避免负度数).. 如果它坏了...自己做一些研究【参考方案3】:

我认为你应该添加 -45deg 而不是 0deg...另外,请确保该类不是静态定位

【讨论】:

以上是关于jQuery Slidetoggle + 旋转的主要内容,如果未能解决你的问题,请参考以下文章

对 slideToggle() jQuery 没有影响

jQuery 效果 - slideToggle() 方法

jquery幻灯片-slideToggle

jQuery slideToggle 问题

jQuery .slideToggle("slow");表格扩展器无法正常工作

slideToggle jQuery 在加载时关闭