Exécution d’animations avec du code côté client (C#)
par Christian Wenz
Le contrôle Animation dans le ASP.NET ajax Control Toolkit n’est pas seulement un contrôle, mais un framework entier pour ajouter des animations à un contrôle. L’exécution de l’animation peut également être déclenchée à l’aide de code JavaScript côté client personnalisé.
Vue d’ensemble
Le contrôle Animation dans le ASP.NET ajax Control Toolkit n’est pas seulement un contrôle, mais un framework entier pour ajouter des animations à un contrôle. L’exécution de l’animation peut également être déclenchée à l’aide de code JavaScript côté client personnalisé.
Étapes
Tout d’abord, incluez le ScriptManager
dans la page ; puis, le ASP.NET bibliothèque AJAX est chargé, ce qui permet d’utiliser control Toolkit :
<asp:ScriptManager ID="asm" runat="server" />
L’animation sera appliquée à un panneau de texte qui ressemble à ceci :
<asp:Panel ID="panelShadow" runat="server" CssClass="panelClass">
ASP.NET AJAX is a free framework for quickly creating a new generation of more
efficient, more interactive and highly-personalized Web experiences that work
across all the most popular browsers.<br />
ASP.NET AJAX is a free framework for quickly creating a new generation of more
efficient, more interactive and highly-personalized Web experiences that work
across all the most popular browsers.<br />
ASP.NET AJAX is a free framework for quickly creating a new generation of more
efficient, more interactive and highly-personalized Web experiences that work
across all the most popular browsers.<br />
</asp:Panel>
Dans la classe CSS associée pour le panneau, définissez une couleur d’arrière-plan agréable et définissez également une largeur fixe pour le panneau :
<style type="text/css">
.panelClass {background-color: lime; width: 300px;}
</style>
Ensuite, ajoutez à AnimationExtender
la page, en fournissant un ID
, l’attribut TargetControlID
et le obligatoire runat="server"
:
<ajaxToolkit:AnimationExtender ID="ae" runat="server" TargetControlID="Panel1">
Dans le <Animations>
nœud, utilisez <OnClick>
pour exécuter les animations une fois que l’utilisateur clique sur le panneau. Ajoutez deux animations à exécuter en parallèle :
<Animations>
<OnClick>
<Parallel>
<FadeOut Duration="1.5" Fps="24" />
<Resize Width="1000" Height="150" Unit="px" />
</Parallel>
</OnClick>
</Animations>
</ajaxToolkit:AnimationExtender>
À des fins de démonstration, cette animation (et toute autre animation créée à l’aide de Control Toolkit) est exécutée à l’aide du code JavaScript, une fois la page exécutée. Tout d’abord, nous avons besoin d’accéder au AnimationExtender
contrôle. La bibliothèque AJAX ASP.NET fournit la $find()
fonction pour cette tâche :
var ae = $find("ae");
Le AnimationExtender
contrôle expose une API riche, y compris des méthodes avec des noms identiques aux gestionnaires d’événements utilisés dans le balisage XML : OnClick()
, OnLoad()
, et ainsi de suite. Par instance, un appel de la OnClick()
méthode exécute l’animation dans l’élément <OnClick>
du AnimationExtender
contrôle :
ae.OnClick();
Voici le code JavaScript côté client complet qui émule le clic sur le panneau une fois que la page a été entièrement chargée, notez que le nom de la pageLoad()
fonction est utilisé, appelé par ASP.NET AJAX une fois que la page et toutes les bibliothèques JavaScript incluses ont été chargées.
<script type="text/javascript">
function pageLoad() {
var ae = $find("ae");
ae.OnClick();
}
</script>
L’animation s’exécute immédiatement, sans clic de souris (Cliquer pour afficher l’image en taille réelle)