작성자 : Christian Wenz
ASP.NET AJAX 컨트롤 도구 키트의 애니메이션 컨트롤은 컨트롤이 아니라 컨트롤에 애니메이션을 추가하는 전체 프레임워크입니다. 사용자 지정 클라이언트 쪽 JavaScript 코드를 사용하여 애니메이션 실행을 트리거할 수도 있습니다.
개요
ASP.NET AJAX 컨트롤 도구 키트의 애니메이션 컨트롤은 컨트롤이 아니라 컨트롤에 애니메이션을 추가하는 전체 프레임워크입니다. 사용자 지정 클라이언트 쪽 JavaScript 코드를 사용하여 애니메이션 실행을 트리거할 수도 있습니다.
단계
우선 페이지에 포함하면 ScriptManager ASP.NET AJAX 라이브러리가 로드되므로 Control Toolkit을 사용할 수 있습니다.
<asp:ScriptManager ID="asm" runat="server" />
애니메이션은 다음과 같은 텍스트 패널에 적용됩니다.
<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>
패널에 대한 연결된 CSS 클래스에서 멋진 배경색을 정의하고 패널의 고정 너비도 설정합니다.
<style type="text/css">
.panelClass {background-color: lime; width: 300px;}
</style>
그런 다음, AnimationExtender을/를 페이지에 추가하고, ID, TargetControlID 특성 및 필수 runat="server"을/를 제공하세요.
<ajaxToolkit:AnimationExtender ID="ae" runat="server" TargetControlID="Panel1">
노드 내에서 사용자가 패널을 클릭하면 <OnClick>을 사용하여 애니메이션을 실행합니다. 병렬로 실행할 두 애니메이션을 추가합니다.
<Animations>
<OnClick>
<Parallel>
<FadeOut Duration="1.5" Fps="24" />
<Resize Width="1000" Height="150" Unit="px" />
</Parallel>
</OnClick>
</Animations>
</ajaxToolkit:AnimationExtender>
데모를 위해 페이지가 실행되면 이 애니메이션(및 Control Toolkit을 사용하여 만든 다른 애니메이션)이 JavaScript 코드를 사용하여 실행됩니다.
AnimationExtender 컨트롤에 우선 액세스해야 합니다. ASP.NET AJAX 라이브러리는 이 작업에 대한 함수를 $find() 제공합니다.
var ae = $find("ae");
이 컨트롤은 AnimationExtender XML 태그OnClick()OnLoad()에 사용되는 이벤트 처리기와 동일한 이름의 메서드를 포함하여 풍부한 API를 노출합니다. 예를 들어, OnClick() 메서드의 호출은 <OnClick> 요소 내에서 AnimationExtender 컨트롤의 애니메이션을 실행합니다.
ae.OnClick();
페이지가 완전히 로드되었을 때 패널의 클릭을 에뮬레이트하는 전체 클라이언트 측 JavaScript 코드는 페이지와 포함된 모든 JavaScript 라이브러리가 로드된 후, ASP.NET AJAX에 의해 호출되는 함수 이름 pageLoad() 이 사용된다는 점에 주의하세요.
<script type="text/javascript">
function pageLoad() {
var ae = $find("ae");
ae.OnClick();
}
</script>
애니메이션은 마우스 클릭 없이 즉시 실행됩니다(전체 크기 이미지를 보려면 클릭).