2012-02-04 1 views
0

저는 AJAX 툴킷을 사용하여 ASP.NET에서 간단한 펄스 애니메이션을 만들려고합니다. IE를 제외한 다른 모든 브라우저에서 작동합니다. IE와 호환되도록하는 방법이 있다면 누구나 알 수 있습니까? ForceLayoutInIE에 대해 읽었지만 펄스인지 페이드인지 확실하지 않습니다.AJAX 툴킷 - AnimationExtender - IE 지원

다음은 코드입니다. 타이머에 신경 쓰지 마라. 그것은 다른 것을위한 것이다.

<asp:UpdatePanel ID="upnlMessage" runat="server" UpdateMode="Conditional"> 
    <ContentTemplate> 
     <asp:Timer ID="Timer1" runat="server" Interval="10000" OnTick="Timer1_Tick" /> 
     <center> 
      <asp:Label ID="lblMessage" runat="server" CssClass="feedbackmessage" /> 
      <ajax:AnimationExtender ID="lblMessage_AnimationExtender" runat="server" Enabled="True" 
       TargetControlID="lblMessage"> 
       <Animations> 
        <OnLoad> 
         <Sequence> 
         <Pulse Duration="0.5" Iterations="0" /> 
         </Sequence> 
        </OnLoad> 
       </Animations> 
     </center> 
    </ContentTemplate> 
</asp:UpdatePanel> 

답변

0

좋아, 나는 그 중 일부를 알아 냈다. 어떤 이유로 IE는 ASP.NET 객체에 잘 응답하지 않습니다. ASP.NET이 클라이언트 측 컨트롤 ID의 이름을 바꾸는 방법과 관련이 있습니다. 내 해결 방법은 AnimationExtender 대상을 ASP.NET Label 컨트롤 대신 Label 주위를 감싸는 div로 설정하는 것입니다. 이제 코드는 다음과 같습니다.

<asp:UpdatePanel ID="upnlMessage" runat="server" UpdateMode="Conditional"> 
    <ContentTemplate> 
     <asp:Timer ID="Timer1" runat="server" Interval="10000" OnTick="Timer1_Tick" /> 
     <div id="divMessage"> 
      <center> 
       <asp:Label ID="lblMessage" runat="server" CssClass="feedbackmessage" /> 
       <ajax:AnimationExtender ID="lblMessage_AnimationExtender" runat="server" Enabled="True" TargetControlID="divMessage"> 
       <Animations> 
        <OnLoad> 
         <Sequence> 
         <Pulse Duration="0.5" Iterations="0" /> 
         </Sequence> 
        </OnLoad> 
       </Animations> 
      </center> 
     </div> 
    </ContentTemplate> 
</asp:UpdatePanel>