1

jQuery Growl プラグインを使用して、Web サイトでユーザーにメッセージを通知しています。メッセージの displayTimeout は 3500 です。問題は、通知メッセージの一部が displayTimeout 後にフェードする必要があることですが、一部は削除するまで静的なままにしておく必要があることです。私の質問は、通知をフェードアウトせずに保持する方法です。ありがとう

4

3 に答える 3

2

このサイクルは、表示とフェードの原因となります..コードを編集することができます..

Growl.prototype.cycle = function() {
    var $growl;
    $growl = this.$growl();
    console.log(this.settings.duration);
    return enter code here$growl.queue(this.present).delay(this.settings.duration).queue(this.dismiss).queue(this.remove);
    };

このようにします..

Growl.prototype.cycle = function() {
      var $growl;
      $growl = this.$growl();
      console.log(this.settings.duration);
      if(this.settings.duration==0){
            return $growl.queue(this.present);
      }else{
            return $growl.queue(this.present).delay(this.settings.duration).queue(this.dismiss).queue(this.remove);
      }
    };

したがって、このように初期化すると..

$.growl({
                title: "Saving",
                style: "primary",
                message: 'Please wait...',
                duration: 0
            });

フェードアウトしません..「dismiss」を使用して手動でフェードアウトすることをお勧めします

于 2015-06-01T16:26:04.653 に答える
1

jquery.growl.js ファイルで、次のコード行をコメントするだけです。

if ($.growl.settings.displayTimeout > 0) {
        setTimeout(function(){
            jQuery.growl.settings.noticeRemove(notice, function(){
                notice.remove();
            });
        }, jQuery.growl.settings.displayTimeout);
    }
于 2013-03-13T14:32:25.897 に答える