black}Windows・Linuxを中心に書き留めるIT技術系の備忘録。2020.02.13この記事は約5分で読めます。DokuWikiのJavaScript・jQueryカスタマイズ方法について解説します。DokuWikiの内部は、CSSの場合と同様にJavaScriptもユーザーが独自に追加できる仕組みとなっています。この仕組みを利用すれば、プラグインを開発しなくても簡単な動作の追加などは可能です。今回のバージョンは以下の通りです。最後にDokuWikiのJavaScriptの仕組みDokuWiki本体のJavaScriptは、lib/scriptsのディレクトリ内にあり、その中にはJavaScriptライブラリのjQueryも含まれます。1.12.1が含まれています。CSSと同様で、テンプレートやプラグインなどのJavaScriptを集約するディスパッチャーのlib/exe/js.phpがあり、tpl_metaheaders関数によって呼び出されています。?>JavaScriptは以下のようにまとめて外部ファイルとして読み込まれます。src="/lib/exe/js.php?t=dokuwiki&..."></script>ロードされるJavaScriptは、以下の通りです。conf/userscript.jsJavaScriptをカスタマイズして処理を追加したい場合は、基本的にユーザースクリプト(conf/userscript.js)に追加することになります。Include構文DokuWikiのディスパッチャーは、JavaScriptのコメントを使用して以下のように記述することで、他のスクリプトファイルをIncludeすることができます。ロードされるプラグインスクリプトやテンプレートスクリプトは、script.jsの1ファイルだけなので、ファイルを分割したい場合はこのInclude構文を使用します。*/include_onceについては、同じ名前のファイルが読み込まれている場合はロードされません。この文法は1回だけしかロードされないので、同一のJavaScriptライブラリを別のプラグインで使う場合に役に立ちます。jQuery使用時の注意点DokuWikiでjQueryを使用する場合の注意点について。jQuery構文DokuWikiは、他のJavaScriptライブラリとの競合を避けるために、$関数($())が使用できないようになっています。「jQuery.noConflict();」の記述で使用不可。そのため、jQuery関数(jQuery())を使用する必要があります。OKjQuery("#sample").hide();また、jQueryオブジェクト変数には頭に$を付けます。出力されたHTMLタグの値を取得するなど、DOM操作をしたい場合はDOMロード完了後に実行されるようにする(コールバック)必要があります。その場合は、jQueryのコールバックの仕組みを利用して以下のように記述します。DOMロード完了後の処理を記述});JavaScriptの定義済みグローバル変数DokuWikiには、JavaScript内で使用できる定義済みのグローバル変数が用意されています。その中でよく使用するものをいくつか挙げます。現在の名前空間(ns1)PHPのグローバル変数と定数については、こちらの記事を参考にしてください。DokuWikiのグローバル変数と定数について解説します。動作モードなどテンプレートカスタマイズやプラグイン開発でよく使用するものを紹介します。itlogs.net2020.02.11最後に今回は、DokuWikiのコマンドラインツールについて解説しました。DokuWikiは、ユーザーが独自にJavaScriptを追加できる仕組みになっているので、プラグインを開発しなくても簡単な動作の追加などは可能です。DokuWikiのおすすめテンプレートとカスタマイズ方法については、こちらの記事にまとめています。DokuWikiの人気でおすすめのテンプレートとカスタマイズ方法についてまとめました。itlogs.net2020.02.14DokuWikiの使い方については、こちらの記事にまとめています。DokuWiki(ドクウィキ)の使い方をまとめました。同じPHPベースのMediaWiki・PukiWikiとの比較もしました。itlogs.net2020.02.01DokuWikiJavaScript\よかったらシェアしてね/Twitter0Facebook0はてブ1Pocket0LINEコピーえふめん大阪在住、30代。業務系SE・社内SEの仕事を通じて学んだこと、PCトラブルで困って調べたこと、手作業を効率化して改善したこと、WordPressのブログ運営などの記事を書いています。最新情報をお届けします。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。ホームDokuWikiえふめん大阪在住、30代。業務系SE・社内SEの仕事を通じて学んだこと、PCトラブルで困って調べたこと、手作業を効率化して改善したこと、WordPressのブログ運営などの記事を書いています。プロフィールプライバシーポリシーお問い合わせサイトマップ検索タイトルとURLをコピーしました。