可见性 属性 无法与 fadeOut() 一起正常工作
Visibility property not working properly with fadeOut()
我正在 table 中开发一个包含 3 列的反馈页面。
Name Feedback icons status
-------------------------------------------------
Name1 icon1 icon2 icon3 Saved
Name2 icon1 icon2 icon3 Saved
-------------------------- and so on....
最初第 3 列有 css 属性 visibility:hidden
。单击任何图标时,该行的第 3 列需要显示为 'Saved',然后消失。
它是第一次为我工作,即如果我第一次点击第一行的 icon2
,保存将显示并消失,当我点击同一行的 icon1
时,它不会显示第三列。
当我点击下一行时,只有在第一次点击时才会出现第 3 列。请帮助我。
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;
});
当您执行 fadeOut() 时,您的脚本将在 css 属性 中实现 display:none。
您需要淡化可见性。
尝试使用下面的代码
$(".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 是否相同
我正在 table 中开发一个包含 3 列的反馈页面。
Name Feedback icons status
-------------------------------------------------
Name1 icon1 icon2 icon3 Saved
Name2 icon1 icon2 icon3 Saved
-------------------------- and so on....
最初第 3 列有 css 属性 visibility:hidden
。单击任何图标时,该行的第 3 列需要显示为 'Saved',然后消失。
它是第一次为我工作,即如果我第一次点击第一行的 icon2
,保存将显示并消失,当我点击同一行的 icon1
时,它不会显示第三列。
当我点击下一行时,只有在第一次点击时才会出现第 3 列。请帮助我。
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;
});
当您执行 fadeOut() 时,您的脚本将在 css 属性 中实现 display:none。 您需要淡化可见性。 尝试使用下面的代码
$(".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 是否相同