SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

特集記事

Ajax対応コントロールでJavaScriptレス アニメーションを実装する

AnimationExtenderコントロール(ASP.NET AJAX Control Toolkit)の利用方法を学習する


  • X ポスト
  • このエントリーをはてなブックマークに追加

コントロールを隠す方法とスタイルを変更する方法(サンプル6)

 アニメーションの動作の中で変わっている物として、ターゲットのコントロールその物を隠してしまうHide Actionがあります。また、対象のコントロールのスタイルの一部を設定するStyle Actionがあります。

サンプル6概要

 ページ上にLabelコントロールとPanelコントロールを配置します。プロパティ設定はPanelのBackColorプロパティだけ任意の色に設定してください(図30)。

図30 サンプル6のフォームレイアウト画面
図30 サンプル6のフォームレイアウト画面

 以下のようなソースを記述します。

default.aspx(一部)
<ajaxToolkit:AnimationExtender ID="AnimationExtender1" 
        runat="server" TargetControlID="Label1">
    <Animations>
        <OnHoverOver>
            <Sequence>
                <StyleAction AnimationTarget="Panel1" 
                    Attribute="display" Value=""/>
            </Sequence>
        </OnHoverOver>
        <OnHoverOut>
            <Sequence>
                <HideAction AnimationTarget="Panel1" />
            </Sequence>
        </OnHoverOut>
    </Animations>
</ajaxToolkit:AnimationExtender>
<ajaxToolkit:AnimationExtender ID="AnimationExtender2" 
        runat="server" TargetControlID="Panel1">
    <Animations>
        <OnClick>
            <Sequence>
                <Resize Fps="10" Duration=".5" Width="200" 
                    Height="300" Unit="px" />
            </Sequence>
        </OnClick>
    </Animations>
</ajaxToolkit:AnimationExtender>

 実行すると、実行直後の画面は図31のようになります。OnHoverOverのイベントが発生している時は図31のようになり、OnHoverOutのイベントが発生している時には図32のようになります。また、先にPanelのOnClickイベント終了後は図33のようになります。

図31 サンプル6の実行時とOnHoverOverイベント時の画面
図31 サンプル6の実行時とOnHoverOverイベント時の画面
図32 サンプル6のOnHoverOutイベント時の画面
図32 サンプル6のOnHoverOutイベント時の画面
図33 サンプル6のOnClickイベント時の画面
図33 サンプル6のOnClickイベント時の画面

 実行時にはPanelコントロールが表示されていますが、Labelコントロールの上にマウスが移動した後にLabelコントロールからマウスが離れると、Panelコントロールは隠れます。もし、Label上にマウスがある場合はPanelコントロールが表示されます。

 また、実行後最初にPanelコントロールをクリックすることで、Panelコントロールのサイズは拡大されますが、Panelコントロールが隠れている時にPanelコントロールがあった場所をクリックしても、Panelコントロールは拡大されません。

 実行すると分かるのですが、姿が隠れている間は、たとえ、そのコントロールにアニメーションを付加していても、実行させることはできません。主にこのコントロールはプロパティを付加させないで利用することが多くなるでしょう。Style Actionはスタイルの中でどれか1種類だけ設定を変更させることができます。複数のスタイルの変更を行いたい場合はその数だけStyle Actionを用意する必要があります。Style ActionはAttributeプロパティに対象のプロパティ名を、Valueにその値を記述することで動作します。

アニメーションリファレンス

 最後に今回利用しなかったアニメーションも含めて、すべてのアニメーションと利用可能なプロパティをまとめてみました。各プロパティの詳細については実際にリファレンスを見て調べてください。

図34 アニメーションとプロパティ
図34 アニメーションとプロパティ

まとめ

 本稿ではControl ToolkitのAnimationExtenderコントロールに絞り、アニメーションの解説と同時に基本的なサンプルを用いたWebページを実装してみました。プロパティウィンドウからの設定ができない、インテリセンスが効かないといったコントロールですので少し難易度が高かったと思います。そこで、本稿ではサンプルを多めに用意しましたがアニメーションの数が多いため、今回すべてのアニメーションに触れることができませんでした。リファレンスを参考にして、ぜひ他のアニメーションも利用して遊んでみてください。

 また、本稿ではあくまで基本的な部分にしか触れていませんので、もっと知りたい方はAnimation Referenceを参考にしてください。

参考資料

  1. ASP.NET AJAX(公式ページ:英語)
  2. ASP.NET AJAX Control Toolkit(ドキュメント:英語)

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
特集記事連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト ナオキ(ナオキ)

WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS Twitter: @yyamada(公式)、@yyamada/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/883 2007/04/13 13:08

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング