4

通知を表示するために、このスクリプトhttp://ned.im/noty/を使用しています

    var n = noty({
        text: message,
        type: type,
        dismissQueue: true,
        force: true,
        layout : "bottomLeft",
        theme: 'newTheme',
        maxVisible : 5
    });

これが現在の構成で、5 つのアイテムがキューに入れられています。問題は、ボタンがクリックされたときに、新しい通知を表示する際の最初の通知を削除する方法がわからないことです。どんなアイデアでも大歓迎です。

4

4 に答える 4

4

さて、noty.js API を使用してそれを理解しました: http://ned.im/noty/#api

最初にトップ通知を定義しました

var notyclose_id    = $("#noty_bottomLeft_layout_container>li:first-child>.noty_bar").attr('id');

その後、通知の量を取得します

var noty_list_count = $("#noty_bottomLeft_layout_container li").size();

この金額が通知設定よりも大きいか等しいかどうかを確認するよりも

    if(noty_list_count >= 5) 
        $.noty.close(notyclose_id);

はいの場合は、APIを使用して閉じます。:)

于 2014-03-12T09:31:15.747 に答える
1

自動削除のタイムアウトを考慮することもできます。これが、私が情報メッセージと成功メッセージに対して行っていることです: これらは 3 秒後に自動的に消えます ( timeout: 3000)。エラー メッセージと警告メッセージを永続的なままにします (ユーザーは、削除するにはクリックする必要がありtimeout: falseます。これがデフォルトです)。

このようにして、物事が山積みになる可能性が低くなり、ユーザーの操作が少なくて済みます。摩擦が少ない。ただし、それがあなたのユースケースに適合するかどうかはわかりません。

noty({
    text: 'Sucessfully persisted xy value',
    layout: 'bottomRight',
    type: 'success',
    timeout: 3000,
    animation: {
        open: 'animated zoomInUp', // Animate.css class names
        close: 'animated zoomOutUp' // Animate.css class names
    }
});


noty({
    text: 'Error while writing value xy',
    layout: 'bottomRight',
    type: 'error',
    animation: {
        open: 'animated zoomInUp', // Animate.css class names
        close: 'animated zoomOutUp' // Animate.css class names
    }
});
于 2015-08-02T08:09:11.943 に答える