jQuery UI の Dialog でフェード効果を実現する方法

最近、 jQuery UI の Dialog を良く使うのですが、開く・閉じる時のエフェクトが IE で安定しないため、エフェクトなしで表示していました。
でも、エフェクトがあったほうがメリットがあるんです。

エフェクトによって Dialog が目立つため、自然に誘導しやすくなります。
エフェクトの時間が余分と思われるかも知れませんが、かえって突然表示されるより自然に感じるため、ストレスを感じません。

そして、操作が楽しくなります。

IEでも安定して動作するエフェクトには、フェード効果があるのですが、jQuery UI 1.8.1 現在で開発版にしか含まれていません。

しかし、以下のように Dialog のオプションを指定することにより実現できました。

$( '#dialog' ).dialog( {
title: 'タイトル',
bgiframe: true,
modal: true,
show: { effect: 'pulsate', duration: 1000, times: 1 },
hide: { effect: 'pulsate', duration: 1000, times: 1 },
....
} ) ;

show, hide オプションにちょっと見慣れない設定をしています。

けっこう満足しています。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください