●人間は
「電車が走らない」といったトラブルは必ず起きる。
なぜなら、ミスをしない人間なんかいないからだ。初期設定状態では走っていた電車が、設定を書き換えた後で走らなくなったとしたら、その設定に何かミスがある。
* 開発者のミス(=プログラムのバグ)の場合もある。鉄道シーンが表示された後でスクリプトエラー(後述)が出る、といった場合はその可能性があるので、状況を具体的に教えていただくと助かる。
* 世の中には「俺はミスなんかしない」と言う人がいる。トラブル解決への道を閉ざすだけで損だと思うんだけどねぇ……まぁ、自己の無謬性を信じるのは本人の自由だ。但し、トラブルの原因を何でもかんでも開発者のミスとして「バグを直せ」とメールしてくるのは止めてもらいたい。
●トラブルの分類。
分類 | ありがちな症状 | 解説 | 解決策 |
単純ミス | ×印が走る。 | 画像を指定フォルダに入れる忘れる等の単純ミス。 | ファイルの有無などをチェック。 |
スクリプトエラー | 走行シーンが出ない。 走らない。 |
JavaScriptのルールに反した記述がある。パラメータ設定に書き間違いがあると生じる。エラー通知を出す設定にしてあると、ダイアログが出る。 | パラメータ設定の書き間違いを探す。 |
エラーにならない 書き間違い |
×印が走る。 第1編成しか走らない。 |
JavaScriptのルールに反していないが、パラメータ設定に書き間違いがある。たとえば画像ファイル名を間違えば×印が走るし、編成番号を間違えばそれ以降の編成が走らないなどの症状が出る。 | |
CSSの改造失敗 | 走行シーンが出ない。 一部の絵が欠ける。 |
CSS指定による「鉄道オブジェクト」を改造しようとして手を加えたりするとトラブルになる場合がある。改造内容によっては、スクリプトエラーになることもある。 | 鉄道シーン用CSS指定個所を元に戻す。 |
開発者のミス | ? | 特定の設定時にのみ、鉄道走行シーンが表示された後にスクリプトエラーが出る、といった場合は、プログラムのバグかもしれない。そうでない場合はバグの可能性は低い。 | おぱく堂にバグ報告して修正版を待つ。 |
ブラウザのバグ | ? | このマニュアルに「〜をすると〜のバグに抵触する」といった記述のあることを守れば大抵は問題ないはずだが、未知のバグもあるかもしれない。 | ? |
OSのトラブル | ? | OSにトラブルがあると、ブラウザが正常に動作せず。その結果、電車走行キットも正常に動作しないことがある。 * 実際、OSに搭載されているDirectXの異常が原因でスクリプトエラーが出た方がいる。WindowsIEは、フィルタ機能を使う時にDirectXの力を借りるらしく、フィルタ指定を変更するスクリプトの個所で「オブジェクトが存在しない」というエラーメッセージが出たそうだ。DirectXが異常になると、鉄道系スクリーンセーバーも異常になるはずで、鉄道側面画的には全滅状態になってしまう。 |
- |
●スクリプトエラーについて。
JavaScriptのルールに反した書き間違いを犯すと「スクリプトエラー」が生じて、JavaScriptが動かなくなる。エラーが出たかどうかは、エラー通知が出るように設定(後述)しておけば分かるようになる。
[ 注意すべき項目 ]
・数値は半角英数か?(全角ではだめ)
・文字列や色指定を囲むクォーテーション " " をうっかり消していないか?
・クォーテーションが対になっているか?(始まりと終わりが対になっている必要がある)
・true、falseは書き間違っていないか?(falesなんてうっかり書きがちである)
・true、falseにクォーテーションを入れていないか?(真偽なので " " は不要)
・コメントの行頭にある // を間違って消してないか?
・同じく // を / にしてしまっていないか?
・大文字と小文字を間違えていないか?(HTMLとは異なり、大小の違いは許されない)*
・空白は、半角空白またはtabか?(全角空白がコメント行以外のプログラム内に混入してはダメ)*
*
印のついた問題は、Windows版IEのバージョンによっては許容されてしまう。つまり間違いに気付くことができない。自分の環境ではちゃんと見られるのに「エラーででるよ」と言われたら、この問題を疑うべし。
ブラウザ | エラー通知を出すようにする方法 |
Windows IE |
ツール → インターネットオプション。詳細設定のタブを選んで「スクリプトエラーごとに通知を表示する」にチェックを入れる。 * 但しこの設定にしておくと、スクリプトエラーのあるサイトに行った時などに非常に不快な状況になる。自分のページを確認する時だけにしておいた方が無難だろう。 |
Mac IE |
編集 → 初期設定。▽Webブラウザにある「Webコンテンツ」を選び、「スクリプトエラーの警告を表示する」にチェックを入れる。 * この設定にしたままスクリプトエラーのあるサイトに行くとエラー表示が出るが、Windows版IEのように「エラーごとに通知」じゃなく、初回エラーのみで以降の同頁エラー通知をキャンセルできる。といっても不快さは Windows版以上かも。なぜなら、WindowsIE専用のスクリプトを無造作に使ったサイトは意外と多く、そういうサイトではエラー出まくりだからだ。WindowsIEでは問題なく見られるページでも、MacIEではどうにもこうにも、ということは多い。 |
Netscape 〜4 | 場所(Location)の窓に「mocha:」と入力して enterキー(returnキー)を叩くと、JavaScriptコンソールという専用のウィンドウが出てきて、スクリプトエラーはすべてここに表示される。 |
Netscape 6〜 | ツール → Web開発 → JavaScriptコンソールを選ぶと、JavaScriptコンソールという専用のウィンドウが出てきて、スクリプトエラーはすべてここに表示される。 |
●スクリプトエラーにならない書き間違いについて。
「エラー通知は出ないが、走行シーンが変だ」という場合もある。
これは、JavaScriptのルールに反した書き間違いはないが、設定パラメータ的には間違っている。…といっても分かりにくいと思うので実例を挙げる。
[ 実例1 - ×印が走る ]
画像が見つからないということ。つまり画像ファイル名を間違っている可能性が高い。あるいは車輛画像用フォルダ名指定がおかしいのか。
* MacIEの場合は、時々ブラウザのバグとして画像読込に失敗して×印になることもある。設定ミスを探しまくった後で、自分のミスじゃないと知った時は虚しいものである。
[ 実例2 - 駅に列車がいない ]
A01で列車の編成長指定が間違っていると、左画面外に出てしまうことがある。あるいは上記×印になってしまうと、不足する画像の分だけ指定寸法より編成が短くなってしまうため、これまた左画面外に編成が出てしまうことになる。「ドア開画像がないのにドア開閉ありに指定したため、ドアが開くと列車が消える」という失敗例を教えて下さった方もいる。
[ 実例3 - 第1編成しか走らない ]
設定支援ツールX01を使ってパラメータ出力をする際に、すべての編成を「第1編成」としたままだったりすると、こういうことが起きる。各編成パラメータにある編成番号に注意されたい。(同様に「1号車しか走らない」という場合は車輛番号のミス。但しこれはX01を使えば絶対に生じないので、手書き時のみの問題)
---- 発生したトラブルからミスの原因を探るのは、事件現場から犯人を探すようなもの。推理力があれば早く見つかるだろう。