应用jQuery fadeTo效果

时间:2009-08-21 16:42:29

标签: jquery html master-pages

我想使用jQuery将fadeTo效果添加到<tr>标记。这应该是可能的,对吗?这是我的代码:

if ($) {
    $(document).ready(function() {
        $("tr[id$='_trPendingRequest_Manager']").fadeTo("slow", 0.33);
    });
}

无论出于何种原因,效果都没有发生。

我决定进行更多测试,并在包含此<tr>的表格正上方添加了一个段落标记,并且我能够成功将fadeTo效果应用于段落标记。因此,这使我认为无法将fadeTo效果应用于<tr>标记。

任何人都有一个智慧的金块,他们不介意与我分享为什么我不能让这个工作?

编辑:以下是<table><tr&gt;的html我试图将效果应用于。

<table>
  <tr id="trPendingRequest_Manager" runat="server" style="display: none;" valign="middle">
    <td valign="middle">
      <asp:Image id="imgExc" runat="server" ImageUrl="~/Images/Mail_24x24.png" />
    </td>
    <td>&nbsp;</td>
    <td valign="middle">
      <asp:HyperLink ID="hypPendingRequest" runat="server" NavigateUrl="~/MyManagedRequests.aspx" Font-Bold="true" Font-Size="Medium" Font-Underline="false" ForeColor="Black">You have <asp:Label ID="lblRequestsNum" runat="server"></asp:Label>request(s) pending your action
       </asp:HyperLink>
    </td>
  </tr>
  <tr>... Removing the rest for brevity ... </tr>
</table>

2 个答案:

答案 0 :(得分:0)

一般来说,根据我的经验,tr元素无法正常操作。例如,你可以为tr元素添加背景颜色(比如斑马条纹),但是如果你想在每个tr“行”之间加一条线,那么你必须将css边框添加到它下面的td元素,否则它不会似乎有任何影响。

我猜这是类似的东西。你可能不得不尝试在有问题的tr元素的每个子td元素上执行fadeTo ... dunno,我承认我没有测试任何东西。

答案 1 :(得分:0)

它工作得很好。如果这是唯一ID,那么您甚至不需要指定tr或匹配选择器,只需这样就可以完成工作:

$(document).ready(){function(){
    $("#_trPendingRequestManager").fadeTo('slow','0.33');
});

编辑: -

因为我怀疑id来自runat =“server”项目。你可以用它来加快速度。

$(document).ready(function(){
    $("#<%=trPendingRequestManager.ClientID %>").fadeTo('slow','0.33');
});

我认为开始_让它表现得很有趣。有关使用 ClientID 属性的更多信息,请阅读Dave的帖子this

同时删除“display:none”这是罪魁祸首!!!

如果您不想删除 display:none

,只需将其链接以将不透明度设置为0
$("#<%=trPendingRequestManager.ClientID %>")
 .css('opacity','0').show() //make transparent and show
 .fadeTo('slow','0.33')

我发现了here