【PR】 プロバイダ・キャンペーン情報まとめ

【PR】 バイオ・リスニングなど英語教材比較

【PR】 アトピー関連商品リンク集

【PR】 目的別レンタルサーバの探し方
 

Googleでコメントがコメント扱いされないケース

Click Here!

全プランMySQL対応、@YMCレンタルサーバー!


通常、検索サイトでは、Javascriptのコードなどはインデックスの対象にはしません。なぜなら、

<script language="Javascript">
<!--
(Javascriptコード)
//-->
</script>

のようにコメントタグの中にJavascriptコードを書いているからです。

ですから、仮にキーワード「document.write」で検索したら、Javascriptの解説ページとか技術系のページに限られるはずです。しかし、実際には、

http://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&c2coff=1&q=document.write&btnG=Google+
%E6%A4%9C%E7%B4%A2&lr=lang_ja

12万7千件もヒットします(2003年6月23日現在)→73,600件もヒットします(2004年4月22日現在)。これらの全てが技術系のページであるとはとても思えません。

ヒットしたページのそれぞれのソースを見てみますと、ある共通点があることが分かります。Javascriptの中でdocument.write("<script language〜</script>");していることです。Javascriptの中で「</script>」をdocument.writeしているのですが、このdocument.writeの目的語とも言うべき「</script>」を大元のJavascriptの終了タグであるとGoogleは誤認し、その「終了タグ」以降のdoucment.writeを含むJavascriptコードを全て、普通のテキストとして処理してしまっているために、このような結果になります。

対策としては、「MacIE4.5での外部ファイルでdocument.writeした場合に文字化けする」の章でも説明しますが、「</script>」を「</scr」と「ipt>」に分解します。

<script language="Javascript">
<!--
   document.writeln("<script language=\"Javascript\">");
   document.writeln("<!--");
   document.writeln("(Javascriptコード)");
   document.writeln("//-->");
   document.writeln("</scr" + "ipt>");
(以下省略)← 「</script>」を分割しないと、この部分がGoogleの検索サマリーに現れます。
//-->
</script>

これで、Googleの検索結果にJavascriptのコードが表示されることはありません。コメントとして扱われます。

これは、文字化けとは関係ありませんが、「本来コメント扱いされるべきものが、テキストとして処理されてしまっている。」という意味で、文字が「化け」ています。ちょっと無理やりです。

今まで、Googleの検索サマリーが文字化けしている現象についていくつか取り上げてきました。次のページでおさらいしてみます。