私が考えている例では、モーダルを使用して、保存された参照のリストを表示しています。これに対する2番目のアクションは、このリストを(自分宛てまたは共有するために)電子メールで送信することです。
これらのアクション(参照リストの表示とフォームの電子メール送信)はどちらも現在モーダルウィンドウです。
私の考えは:
参考資料として引き出し式のインターフェース(マテリアルデザインから)を使用し、自分宛にメールで送信したり、ソーシャルメディアで共有したりするためのモーダルがある場合はどうでしょうか。
メインレイヤーでは、ユーザーに記事のテキストが表示されます。テキスト内の参照番号にカーソルを合わせると、参照の詳細を示すポップアップと「参照を保存」というボタンが表示されます。
左上のハンバーガーアイコンをクリックしてアクセスするドロワーレイヤーで、保存された参照のリストを表示します(これには、ソーシャルメディアでの共有、削除、EndNoteへのエクスポート、自分へのメール送信のためのボタンも含まれる場合があります。または友人、または何でも)。ユーザーはおそらく、一度に1つではなく、一度にすべての保存された参照を自分宛てに電子メールで送信したいと思うでしょう。
これはモバイルデバイス向けのデザインですが、Webでも使用できます。
別のモーダルを使用する代わりに、モーダル内でカードフリップアクションを使用してコンテンツ間をスムーズに移行することを検討します。移行がスムーズになり、耳障りが少なくなります。すべてのコンテンツをモーダルにロードし、セカンダリコンテンツを非表示にします。次に、CSSトランジション/トグルでコンテンツを切り替えます。
多分これを使う: https://nnattawat.github.io/flip/
両方のステップで本当にモーダルを使用したい場合、別のモーダルを呼び出すモーダルの良い代替手段は、コンテンツを置き換えることです(つまり、提供したソリューションで提案したものです)。
モーダルの目標は、ユーザーの注意を引くコンテンツの領域を作成することです。したがって、これが必要な場合、新しいページは意味がありません。分析する必要があるのは、両方のケースでモーダルのコンテンツが本当に必要かどうかです。
マテリアルデザインガイドライン からの情報もお読みください。
ダイアログがダイアログを起動しないようにする
確認ダイアログでは、追加の単純なダイアログや単純なメニューを起動しないでください。複雑になるため、アプリの高度が上がるように見えます。タスクを完了するために必要な場合は、代わりにフルスクリーンダイアログの使用を検討してください。
つまり、2つのモーダルを検討できますが、これは、タスクを完了するために本当に必要な場合に限られます。
それはあなたが使っているレイアウトの問題だと思います。
モーダルからこのモーダルの問題に直面したとき、私はそれをカードレイアウトと呼ばれるものに変換しました。これは、前のコンテンツをスライドバックし、ボタンクリック(メールの場合)で同じモーダルの新しいコンテンツを開きます。これは片道です。
例で説明した状況を処理する別の方法は、以下のように、目的のコンテンツを含むデフォルトの電子メールクライアントを開くために、最初のモーダル自体にリンクボタンを配置することです。
$(function () {
$('.SendEmail').click(function (event) {
var email = '[email protected]';
var subject = 'Test';
var emailBody = 'Hi Sample,';
var attach = 'path';
document.location = "mailto:"+email+"?subject="+subject+"&body="+emailBody+
"?attach="+attach;
});
});
( this )リンクからコピーされます。
シナリオと異なる場合は、スクリーンショットまたはワイヤーフレームをお寄せください。