【问题标题】:Visibility property not working properly with fadeOut()可见性属性无法与 fadeOut() 一起正常工作
【发布时间】:2016-09-06 12:58:45
【问题描述】:

我正在开发一个包含 3 列的表格中的反馈页面。

Name         Feedback icons          status
-------------------------------------------------
Name1        icon1 icon2 icon3       Saved
Name2        icon1 icon2 icon3       Saved
-------------------------- and so on....

最初,第 3 列具有 css 属性 visibility:hidden。单击任何图标时,该行的第 3 列需要显示为“已保存”,然后消失。 它第一次为我工作,即如果我在第一行第一次点击icon2,保存将显示和消失,当我点击同一行上的icon1 时,它不会显示第三列。

当我点击下一行时,第三列只会在第一次点击时出现。请帮帮我。

HTML

<table class="tbl_result">
   <tbody>
    <tr><td width="55%">Nahed </td>
       <td width="42%">
         <div id="tbl_row_icons0" class="tbl_row_icons">
          <div class="emoji_parent">
           <div class="emoji_2 emojichild">
            <a title="Poor" class="feedbck_name" href="#"><img src="/user_uploads/my.aisc.ac.cy/emoticon/poor.png"></a>
           </div>
         <!--second icon--!>
          <div class="emoji_3 emojichild"><a title="Good" class="feedbck_name" href="#"><img src="/user_uploads/my.aisc.ac.cy/emoticon/good.png"></a>
         </div>
       </div>
      </td><td width="7%" class="toggle_save">Saved</td>
   </tr>
  </tbody>
 </table>

CSS

.toggle_save
{
    visibility:hidden;
    color:green;
    font-weight: bold;
}

jQuery 函数

//click event for icon 
$(".feedbck_name").click(function()
{    
   $(this)
       .closest('td')
       .next('td.toggle_save')
       .css('visibility','visible')
       .delay(1000)
       .fadeOut();

   return false;
});

【问题讨论】:

    标签: php jquery visibility fadeout


    【解决方案1】:

    当你在执行fadeOut() 时,你的脚本将使它在css 属性中显示:无。 你需要淡化可见性。 试试下面的代码

    $(".feedbck_name").click(function()
    {    
       $(this).parent('td').siblings('td.toggle_save')
        .css('opacity','1')
        .css("visibility", "visible")
        .fadeTo(1500, 0, function(){
             $(this).parent('td').siblings('td.toggle_save')
             .css("visibility", "hidden").css('opacity','1');   
        });
        return false;
    });
    

    检查this fiddle 是否相同

    【讨论】:

    • 它在第一次点击每个图标时起作用。当我们点击同一个图标时,它不起作用..特别是在点击图标后立即点击另一个图标
    • 这不会在图标之间快速单击时显示文本。请帮助我
    • jsfiddle.net/9qwdjh61/5 去这里这会有所帮助。在 sn-p 中检查 .stop(true,true)
    • 谢谢兄弟..它工作了。你能给出这里使用的这个停止函数()的任何逻辑
    • 一般来说,当你做动画的时候,比如fadeTo,fadeOut,fadeIn,这一切都有时间设置。如果您不设置默认时间,但时间因素始终存在。现在 stop() 函数确保我们清除队列和正在进行的动画,因此,第一个 true 是清除对象上正在进行的所有动画,第二个 true 是立即跳转到结尾。当您打开控制台并在移除停止后检查您的代码时,您会发现不透明度因子将逐渐从 1 变为 0,而不是在跳转中,这就是它看起来像淡入淡出的原因。现在我们的停止将删除所有正在进行的任务
    猜你喜欢
    • 1970-01-01
    • 2018-01-18
    • 2021-02-18
    • 1970-01-01
    • 1970-01-01
    • 2010-11-15
    • 1970-01-01
    • 1970-01-01
    • 2012-08-23
    相关资源
    最近更新 更多