AJAX Toolkit - AnimationExtender - поддержка IE - PullRequest
0 голосов
/ 04 февраля 2012

Я пытаюсь сделать простую импульсную анимацию в ASP.NET с помощью AJAX Toolkit. Он работает во всех других браузерах, кроме IE, где он остается статичным. Кто-нибудь знает, есть ли способ сделать его совместимым с IE? Я читал кое-что о ForceLayoutInIE, но не уверен, что это для пульса или просто исчезает.

Вот код. Не против Таймера, это для чего-то другого.

<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>

1 Ответ

0 голосов
/ 07 февраля 2012

Хорошо, я разобрался с этим.По некоторым причинам IE плохо реагирует на объекты ASP.NET.Вероятно, это связано с тем, как ASP.NET переименовывает идентификаторы элементов управления на стороне клиента.Мой обходной путь - установить для объекта AnimationExtender значение div, которое оборачивается вокруг метки вместо самого элемента управления меткой ASP.NET.Теперь мой код выглядит так:

<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>
...