ホームページ > ウェブフロントエンド > jsチュートリアル > Yii2 はブートボックス プラグインを使用してカスタム ポップアップ windows_javascript スキルを実装します

Yii2 はブートボックス プラグインを使用してカスタム ポップアップ windows_javascript スキルを実装します

WBOY
リリース: 2016-05-16 16:06:24
オリジナル
1546 人が閲覧しました

今回は新しいプラグイン「bootbox」を試してみました。

Yii2 ではインターフェイスをより美しくするために Bootstarp が使用されていますが、唯一の欠点は、Gridview テーブルのアクションで、削除関数のポップアップ ウィンドウが Bootstrap と少し矛盾していることです。このソリューションをオンラインで共有してください。

Bootbox.js は、Bootstrap の Modal (モーダル ボックス) に基づいて、単純なプログラム可能なダイアログ ボックスを作成するために使用される小さな JavaScript ライブラリです。

公式説明

http://bootboxjs.com/v3.x/index.html

Bootbox.js のダウンロード

オープンソースの bootbox.js のダウンロードは GitHub で見つけることができます

https://github.com/makeusabrew/bootbox

このプラグインの使用方法は?

Yii2 の GridView と組み合わせると、Bootbox スタイルのポップアップ ウィンドウをカスタマイズできます:

1. yii.js モジュールをカバーします

Yii2 に付属する yii.js は、確認ダイアログ ボックスの生成とアクション操作の実行を定義します。

目標を達成するには、オーバーライドする js メソッドを使用します。

パス @app/web/js/ の下に main.js などの JavaScript ファイルを作成します。

コードは次のとおりです:

yii.allowAction = function ($e) {
  var message = $e.data('confirm');
  return message === undefined || yii.confirm(message, $e);
};
// --- Delete action (bootbox) ---
yii.confirm = function (message, ok, cancel) {

  bootbox.confirm(
    {
      message: message,
      buttons: {
        confirm: {
          label: "OK"
        },
        cancel: {
          label: "Cancel"
        }
      },
      callback: function (confirmed) {
        if (confirmed) {
          !ok || ok();
        } else {
          !cancel || cancel();
        }
      }
    }
  );
  // confirm will always return false on the first call
  // to cancel click handler
  return false;
}
ログイン後にコピー

2. リソース パッケージを登録します

bootbox.js ファイルと main.js ファイルを登録する必要があります。

ファイルの変更: @app/assets/Assets.php

コードは次のとおりです:

namespace backend\assets;

use yii\web\AssetBundle;

class AppAsset extends AssetBundle
{
  public $basePath = '@webroot';
  public $baseUrl = '@web';
  public $css = ['css/site.css'];
  // 注册js资源
  public $js = ['js/bootbox.js', 'js/main.js'];
  public $depends = [
    'yii\web\YiiAsset',
    'yii\bootstrap\BootstrapAsset',
  ];
}

ログイン後にコピー

3. カスタムモーダルボックス

bootbox.js のソース コードを理解すると、bootbox.js が bootstarp のモーダル ボックスを使用していることがわかります。必要に応じてカスタマイズできます。

bootbox.js ソース コードの「templates」変数を変更し、モーダル スタイルをカスタマイズします。

比較結果を見てください:

変更前:

変更後:

すぐに快適になり、ポップアップ機能もそれほど不安定ではなくなりました。このようなポップアッププラグインはたくさんありますが、他のプラグインも同様に実装できると思います。

以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート