2

Rails 3 アプリでターボリンクを使用しようとしています。ページの変更後に Alertify が機能しなくなることを除いて、すべて問題ありません。

jquery-turbolinks gem をインストールしてパッチを当てましたが、効果はありませんでした。

また、alertify 関数をラップして page:change でトリガーしようとしましたが、やはり喜びはありません。

ターボリンクに問題がある人はいますか?

4

2 に答える 2

2

Alertify 0.4.0 (現在は RC1) でこれに遭遇した人は、使用している Alertify 要素をリセットすることでこれを解決できます。私の場合、それは Alertify.dialog でした:

Alertify.dialog.el = false
// Do your normal JS stuff

これについての私の大雑把な理解では、Alertify はダイアログ要素が作成されたと考えますが、Turbolinks がページをロードすると、その要素は破棄されます。Alertify にそれが破棄されたことを伝える必要があり、Alertify はそれを再作成します。

詳細についてサポートが必要な場合は、お知らせください。

于 2013-05-15T00:00:12.410 に答える
1

私が知る限り、Turbolinks はグローバル スコープを台無しにしており、アラートが DOM に適切に接続されていません。

したがって、私の回避策は次のとおりです。

   //Keep global reference to alertify init() function
    $(document).on('ready',function(){
     window alertifyInit = alertify.init;
    });
    //re-initialise on page change/load
    $(document).on('page:change page:load',function(){
        alertifyInit();
    });
于 2013-04-29T11:23:16.303 に答える