Movable TypeにJavaScriptを直接記述する方法

はてなブックマークに追加はてなブックマーク Yahoo!ブックマークに登録 ニフティクリップに追加 Livedoor クリップに追加 BuzzurlにブックマークBuzzurlにブックマーク Twitterに投稿  

このブログは、Movable Type(MT)のVersion 3.34で構築しています。
バージョンアップは面倒くさいのでしていない。

で、昨日MTの管理画面のエントリー記事投稿で、直接JavaScriptを書いて動かせないかなぁ・・
と、あれこれやっていたら方法が分かった。
いちいち、別のjsファイルを作って、読み込んで実行とか面倒くさいので。

現行の新しいバージョンなら解決されている、または以下に書いた以外に方法があるのかもしれません。


まず、試してみたのは、以下のように普通にjavascriptを書く方法。

<script type="text/javascript">
document.write("hello! world!");
</script>

これだと、javascript記述部分に、勝手にpタグやらbrタグが付加されて動かない。
そこで、preタグを用いる方法を試してみた。
preタグ内は、ソースがそのまま表示されるが、「<」や「>」、「&」は特殊文字として認識されるので、上手いこと動くのではないかと予想したから。

で、以下のようにpreタグで囲んでjavascriptを書いてみたら、動きました!

<pre>
<script type="text/javascript">
document.write("hello! world!");
</script>
</pre>

上記ソースの実行結果。


「hello! world!」がちゃんと表示されています。


ひとつ注意点としては・・・

preタグ内の改行(brタグ)を無効にする(MT・Movable Type)の記事で書いたルールを守らなければいけない。

1.preタグ内で、行を空けない。(空の行が入ったら駄目)
2.pre開始タグのすぐ上の文との間に、1行だけ空の行を作る。(2行以上、空けてはいけない。)

これを守らないと、またpタグやらbrタグが勝手に付加されて、javascript文が動かなくなる。
MTの挙動には、けっこう癖があるみたいですね。


日時: 2008年03月12日 12:50

コメント (2)

僕は、JavaScriptとかはデフォルトOFFに設定しているので
その部分は動かなかったり><b

投稿者: ふかわ | 日時: 2008年03月12日 14:34

■ふかわくん

ゲフッ!
デフォルトOFFにしてたら、そりゃ動かないね。。
ハローワールドだよハローワールド、ハローワークじゃないよ☆

投稿者: TAKA | 日時: 2008年03月12日 22:56



コメントを投稿






トラックバック

■この記事のトラックバックURL:
http://www.mapee.jp/mpe334/mt-tb.cgi/121

この記事にトラックバックされる方は、参照先が分かるようにするために、「Movable TypeにJavaScriptを直接記述する方法」へのリンクをお願いいたします。
以下のHTMLタグをトラックバック送信元ページ内に挿入して下さい。



※この記事へのリンクがない、また関連のないページからのトラックバックは反映されませんので、ご了承下さい。






あわせて読みたいブログパーツ
フィードメーター - ウェブライフハック