将箭头返回原始位置

时间:2014-09-29 16:31:37

标签: javascript jquery slidetoggle

我有FIDDLE

它是一个显示和隐藏多个切换div的切换。我现在设置为在打开div时也向下切换箭头,但是一旦div关闭,箭头仍然处于向下位置,我希望它返回到向右位置。

 $(this).find('span').css('transform', 'rotate(0deg)');

完整脚本

 $(document).ready(function () {
     // Toggles 1st Hidden Desktop Div
     $(".dtc-s").click(function () {
         $(".dtc-h").slideToggle(500);
         $(".dtc-two-h, dtc-three-h").hide(500);
         $(this).find('span').css('transform', 'rotate(90deg)');
     });
     // Toggles 2nd Hidden Desktop Div
     $(".dtc-two-s").click(function () {
         $(".dtc-two-h").slideToggle(500);
         $(".dtc-three-h, .dtc-h").hide(500);
         $(this).find('span').css('transform', 'rotate(90deg)');
     });
     // Toggles 3rd Hidden Desktop Div
     $(".dtc-three-s").click(function () {
         $(".dtc-three-h").slideToggle(500);
         $(".dtc-two-h, .dtc-h").hide(500);
         $(this).find('span').css('transform', 'rotate(90deg)');
     });
     // #1
     if ($('.dtc-one').is(':visible')) $(this).next().slideDown();
     $(this).find('span').css('transform', 'rotate(0deg)');
     // #2
     if ($('.dtc-two').is(':visible')) $(this).next().slideDown();
      $(this).find('span').css('transform', 'rotate(0deg)');
     // #3
     if ($('.dtc-three').is(':visible')) $(this).next().slideDown();
      $(this).find('span').css('transform', 'rotate(0deg)');
 });

1 个答案:

答案 0 :(得分:0)

尝试在点击功能中添加:visible check。像这样:

 $(".dtc-s").click(function () {
     if($(".dtc-h").is(":visible"))
         $(this).find('span').css('transform', 'rotate(0deg)');
     else
         $(this).find('span').css('transform', 'rotate(90deg)');
     $(".dtc-h").slideToggle(500);
     $(".dtc-two-h").hide(500);
     $(".dtc-three-h").hide(500);
 });

小提琴:http://jsfiddle.net/59kz17d9/1/(我只为第一支箭做过)