イトウ先生のTips note【Dreamweaver CC 2015】JavaScriptを外部化

20150408-tipsnote2015

こんにちは、イマジカデジタルスケープの伊藤和博です。
今週は、先週に引き続きDreamweaver CC 2015から、「JavaScriptを外部化」をご紹介します。
この機能自体は、CC 2015から搭載された、ということではなく、機能そのものはCS4以降のDreamweaverであれば使用することが可能ですが、HTMLの中に記述 されているJavaScript部分だけを外部ファイルに切り離す、という機能で、しかも、onclickなどのイベントハンドラも別にすることが可能な すぐれものです。
HTML5では、JavaScriptを使うことが当たり前になりましたが、scriptタグに記述したソースもこの機能を使えば簡単に分離することが可能ですので、どのように分離するかも含め、ぜひ一度使ってみていただきたい機能になります。

●さっそくやってみよう!

まずは、HTMLのscriptタグ内にJavaScriptを使用したHTMLファイルをDreamweaverで開きます。今回は、headとbodyの中にそれぞれscriptタグを記述したものと、onclickのイベントハンドラを適用したinputタグを記述したものを使います。

Dwcc15_js001

コマンドメニュー>JavaScriptを外部化、を選択します。

Dwcc15_js002

このとき、scriptタグとその中のJavaScript部分のみを外部化する場合は、「JavaScriptの外部化のみ」にチェックし、外部化します。編集のタイプ、の列には、HTMLファイル内でscriptタグを使用している箇所が表示されるため、チェックを入れてHTMLからscriptタグを削除しておきます。このチェックを外して外部化してしまうと、外部JavaScriptファイルは作成されることは作成され、src属性で読み込みはしますが、ファイルの中身が空の外部JavaScriptファイルとなり、実際のJavaScriptは、HTMLに残したJavaScriptが効いていることになり、外部化する意味が無くなってしまいます。

Dwcc15_js003

実際に書き出すと、以下のようなウインドウを表示します。headの中に記述してあるJavaScriptは、現在のHTMLファイルのファイル名.jsの名前で外部JavaScriptを作成して外部化し、bodyタグの中に記述してあるJavaScriptは、SpryDOMUnils.jsという名称で外部JavaScriptを作成します。

Dwcc15_js006

JavaScriptを外部化したHTMLを保存すると、jQueryやSWFを使用した時と同様に依存ファイルのコピーのメッセージが表示され、SpryDOMUnils.jsをローカルルートフォルダに保存およびサーバーへのアップロードを促します。

Dwcc15_js007

●完全分離

scriptタグはもちろん、onclickなどのイベントハンドラも含めて、JavaScriptを完全に外部に切り離す場合は、「JavaScriptを外部化し、onobtrusiveに添付(完全分離)」を選択します。なお、この完全分離を行うとビヘイビアパネルで設定したJavaScriptも分離され、以降は編集できなくなる警告を出します。

Dwcc15_js004

編集のタイプには、HTML内に設定したイベントハンドラも表示され、idを設定することが可能になります。ここで設定するid名に対して、Spry側からイベントリスナーで操作する、という仕組みになります。

Dwcc15_js005

分離後のソースを見ると、以下のように2つの外部JavaScriptのみになったのが確認できます。

Dwcc15_js011

bodyタグ内にあるscriptタグと、各種イベントハンドラを外部化するとSpryDOMUnils.jsで書き出すため、この部分をどのように扱うか?がポイントになるかと思います。Spryを使用せず、単に.jsファイルのみを作成して外部化する場合は、scriptタグはすべてheadタグの中に書いておき、イベントハンドラはそのままHTMLに残しておく、という方法がいいでしょう。


この記事を読んだ方にオススメの講座はこちら!

▼Dreamweaver CCの使い方・基本トレーニング
メインビジュアル:Dreamweaver CCの使い方・基本トレーニング

▼JavaScriptの基礎知識
メインビジュアル:JavaScriptの基礎知識


イトウ先生が、Twitterを始めました!みなさんもぜひ、フォローしてくださいね!
itoh_sensei

イトウ先生のTips noteアーカイブ【2016年~】

イトウ先生のTips note アーカイブ【2010年~】(別サイトに飛びます)

○消しゴムツールの活用
○ななめの画像をまっすぐにする方法
○自然な合成テクニック・角版
○自然な合成テクニック・切り抜き画像
○画像合成後の便利なショートカット
○調整レイヤー
○レイヤーパネルの不透明度と塗りについて
○不透明度のショートカット
○CS5新機能01:「コンテンツに応じる」機能
○CS5新機能02:絵筆ブラシと混合ブラシ
○CS5新機能03:人の記憶に近い画像・HDRについて
○CS5新機能04:パペットワープ
○CS5新機能05:3Dオブジェクトとアニメーション
○美しいモノクロ画像の作り方
○境界部分をきれいにカラー変更する方法
○Photoshop CS6 特集・その1(全3回)
○Photoshop CS6 特集・その2(全3回)
○Photoshop CS6 特集・その3(全3回)
○2つの画像の違いを調べる、差の絶対値
○Photoshop CS6だけで作るビデオ・その1
○Photoshop CS6だけで作るビデオ・その2
○Photoshop CS6だけで作るビデオ・その3
○CSSの読み込み(スウォッチカラー)と、 CSS書き出し(CSSをコピー)について
○条件付きアクション
○Photoshop CCの新機能
○Photoshop CCの新機能:Generator(ジェネレーター)
○PhotoshopをJavaScriptで操作するAdobe Extendscript Toolkit CC
○新しいスクリプトパターンと、リンクを配置について
○変数
○Photoshop CC 2014:「配置」と「パッケージ化」
○Photoshop CC 2014:焦点選択と測定ガイド
○Photoshop CC 2014:3Dプリント
○Photoshop CC 2014:CameraRaw 8.7
○Photoshop CC 2014:シェイプから新規ガイドを作成と、新規ガイドレイアウトを作成
○Photoshop CC 2014:PhotoshopとAfterEffectsで使える、カラールックアップテーブルの書き出し
○Photoshop CC 2015:アートボード
○Photoshop CC 2015:かすみを除去する
○CS5新機能01:ロトブラシ
○CS5新機能02:新しい便利なショートカット
○CS5 パペットアニメーションと、時間反転キーフレーム
○CS5 ビデオや画像の型抜きについて「トラックマットとステンシルアルファ」
○CS5 動画の動きを捕らえて、他のレイヤーに適用する「モーショントラック」
○CS5.5 ワープスタビライザー
○CS5.5 ブラー・互換・タイムコード
○CS5.5 「シャドウを落とす・受ける」機能
○CS5.5 エクスプレッション・その1
○CS5.5 エクスプレッション・その2
○CS5.5 エクスプレッション・その3
○CS6の新機能1:ベクトルレイヤーからシェイプを生成
○CS6の新機能2:3Dカメラトラック
○AfterEffects CCの新機能:ワープスタビライザーVFX
○AfterEffects CC・レンダリングの変更点
○AfterEffects CCの新機能:マスクをトラック
○AfterEffects CCの新機能:ピクセルモーションブラー
○AfterEffects CCエッジを調整ツール
○AfterEffects CC モーションスケッチ
○AfterEffects CC 2014:HTML5パネルSDK(その1)
○AfterEffects CC 2014:HTML5パネルSDK(その2)
○AfterEffects CC 2014:4KビデオのYouTubeへのアップロード
○AfterEffects CC 2014:相対的なプロパティリンクと一緒にコピー
○AfterEffects CC 2014:モーフィング
○AfterEffects CC 2014:画像やビデオ等からカラーを抽出し、他のレイヤーに適用するsampleImageメソッド
○AfterEffects CC 2014:監視フォルダーの使い方
○AfterEffects CC 2014:カラープロファイルの使い方
○AfterEffects CC 2015:顔のトラッキング
○AfterEffects CC 2015:タイムチューナー