2013-03-12 51 views
0

我有以下一段標記,我們正在iphone 4上運行它,所以像Hover這樣的CSS元素不起作用。ASP .NET更改中繼器內部的鏈接顏色 - 點擊

<asp:Repeater ID="rpt" runat="server"> 
    <HeaderTemplate> 
     <div class="table withshadow"> 
    </HeaderTemplate> 
    <ItemTemplate> 
     <a href='<%#Eval("HistoryTeacherURL")%>' class="tablerow list navigate"> 
      <div class="tablecell listitem left"> 
       <asp:Label ID="lblDesc" Text='<%#Eval("Name")%>' runat="server" CssClass="item" /><br />      
      </div>        
      <div class="tablecell listitem right"> 
       <touch:TutorialSheets ID="lblBal" Text='<%#Eval("Tutorial")%>' runat="server" CssClass="amount item" /> 
      </div> 
      <div class="tablecell listitem witharrow">       
      </div> 
     </a> 
    </ItemTemplate> 
    <FooterTemplate> 
     </div> 
    </FooterTemplate> 
</asp:Repeater> 

我們想要的是,當我們點擊鏈接時,顏色應該變成紅色!問題是,這種類型的CSS作品在Firefox,但不支持iPhone 4

a:active 
{  
    background-color: #31ac48; 
    font-color: #ffffff; 
} 

這將是巨大的看替代方案來解決這個問題(JavaScript的,jQuery的等),使他們中的至少一個可能在iPhone 4上工作:-)

回答

1

您可以使用jQuery。

$("a").click(function() { 
    if $(this).is(":active") { 
     (this).css("font-color", "red"); 
    } 
}); 

見琴:http://jsfiddle.net/bMyMd/

+0

我們使用了不同的方法(與您的想法類似)。感謝jsfiddle鏈接。 – VVV 2013-03-30 01:11:24

1

是否使用所有的僞類或只是一個?
如果您使用至少兩個,確保他們以正確的順序或它們各個擊破:

a:link 
a:visited 
a:hover 
a:active 
的順序

。另外,如果您只是使用:active,請添加a:link,即使您沒有設計樣式。