
ブログパーツを見ていると、外部JSファイルを読み込んで内容表示をさせるものがあります。
例:<script type="text/javascript" src="hogehoge.js" charset="utf-8"></script>
ここで疑問なのは、charsetが設定されていることです。
例えば、読み込みするHTML側がShift-JISだった場合、これですと、同じページ内に2つのcharsetが混在することになります。
実際には読み込み出来ますし、表示も問題ない(ファイル内に日本語が含まれていた場合、むしろ保存したファイルの形式にあわせて指定しないと文字化けする?)と思うのですが、個人的には混在することがひっかかっています。
この場合、外部JSファイルをShiftJIS・UTF-8N・eucなどでそれぞれ保存して、別ファイルとしてリンクさせた方が良いような気がするのですが、その辺はどうなのでしょうか?
charsetが指定出来る以上、混在しても構わないということなのでしょうか?
ちょっと要領を得ない質問で申し訳ありませんが、ご回答いただければ幸いです。
No.3ベストアンサー
- 回答日時:
文字コードを暗号と思えば解りやすいと思います。
暗号化の方式にAとBがあったとします。
aと言う文書はAで暗号化されています。
bはBで暗号化されています。
aをA解読する機械を使って解読して読むと「bがBと言う方式で暗号化されていますのでそれも読んでください。」
と出ていたとし、これをBを解読する機械で解読して読んでいると暗号化の方法のAとBは混在していません。
それとほぼ同じと考えれば良いと思います。
このときに重要なのは、読んでいる時にはすでに解読されていますので暗号化の方式は関係ないってことです。
こちらの分かりにくい応答に、非常に分かりやすい例え話でご回答いただき、とても有り難かったです。
なるほど、暗号化と考えて、読んでいる時には既に解読されているので方式は関係ない、と考えればスンナリと理解出来ます。
ということは、結果は「charsetの指定をすれば、ファイルは1つで構わない」ということですね。
大変参考になりました。有難うございました!
No.2
- 回答日時:
<script type="text/javascript" src="hogehoge.js" charset="utf-8"></script>
これってhogehoge.jsの文字コードとMIMEタイプを指定しているのですよね。
それなら混在していないと思いますよ。
”<script type="text/javascript" src="hogehoge.js" charset="utf-8"></script>”の部分は、utf-8以外で書かれていて参照するhogehoge.jsはutf-8ってことですよね。
こちらも回答、ありがとうございます。
すみません、色々と不案内なもので、ちょっと上手く理解出来ていないのですが…。
読込側:index.html(Shift-JIS)
JS側:hogehoge.js(UTF-8)
であった場合、Shift-JISのファイルの中にUTF-8のファイルが読み込まれて表示される事、それ自体は「混在している」ということにはならないのでしょうか。
例えば、BODY部分にJSファイルを読み込んだとして、■=Shift-JIS、◇=UTF-8のタグ・テキスト部分とします。
感覚的には出力される結果が、
■■■■■■■■■■■
■■■■■■◇◇◇■■
■■■■■■■■■■■
このような感じになる気がして「混在してる気がする」となるのですが…その考え自体が、勘違いだったのでしょうか?
(すみません、図がわかりにくいかも知れませんが…)
No.1
- 回答日時:
私も気になっていくつかのブラウザで試してみましたが、文字化けするようなものはありませんでした。
(Mac,Win × Firefox,Opera,IE,Safari)RSSやXMLなどの文字コードはUTF-8が一般的です。これらを読み込んで表示させるAJAXプログラムを作るときに、どうしても文字コードが違うページが出てきてしまいます(LinuxサーバではやっぱりEUC-JPが使いやすいし、WinではShift-JISが使いやすい)。こうなると、やっぱり外部呼び出しで違う文字コードの方が便利ですよね。
ブラウザの仕様として、ある程度この辺は保証されているのではと勝手に解釈しています。
回答ありがとうございます!
私も同じ出来る限りの環境で調べてみたのですが、文字化けはしませんでした。(Netscapeでも一応)
ただ、特に問題がなくても「ルールとして」問題があるのであれば…と思いまして、質問いたしました。
ブラウザの仕様として、というご回答も一つの納得の材料として参考にいたします。
なお、すみませんが、回答の〆切はもう少しお待ちください。(出来れば、より技術的な面で「OK」か「ファイル分けるべき」という判断が欲しいので…)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- PHP Content-Typeが機能していない? 2 2022/07/17 11:10
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- HTML・CSS HTMLを正しく表示させるには 2 2023/06/18 09:12
- JavaScript HTMLでJavaScriptを使ってパスワードの強化判定のプログラムを作成しています。 一通り作っ 2 2022/10/19 01:41
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- PHP phpのメールフォームの完了画面でメール受信のコードを書いています。 1 2023/05/31 11:39
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウンメニューを別ファイ...
-
cssにjavascriptを入れる?呼び...
-
外部CSSについて
-
外部.jsの内容を一部置き換えて...
-
JavaScriptのエラー ( 関数の...
-
外部JavaScriptファイルを読み込む
-
javascriptとApacheの設定
-
<a href="#" …>の意味を教えて...
-
JavaScriptでiframeの内容を「...
-
Vbscriptで自分自身のウィンド...
-
フレームをこえるポップアップ
-
MovableTypeで月間ログを表示し...
-
スマホ上で、左右スワイプで次...
-
JavaScriptでのEnterキーとAlt+...
-
横スクロールを右から左へ・・・
-
リアルタイムに時計を表示する...
-
初歩的な文字入力フォームの添...
-
お気に入りアイコン設置の別な...
-
ポップアップウィンドウの位置
-
フレーム リロード
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
cssにjavascriptを入れる?呼び...
-
javascriptとApacheの設定
-
プルダウンメニューを別ファイ...
-
レンタルサーバーでjavascript...
-
初心者です。あまりに初歩的な...
-
JavascriptとJqueryを混在し記述
-
Dreamweaver で 外部JSを読み込...
-
JavaScriptのエラー ( 関数の...
-
複数のJavascriptを1つのscrip...
-
javascriptファイルは1つに統...
-
別ファイルのfunctionの読み込み方
-
JavaScriptの外部ファイル読み込み
-
processing
-
ホームディレクトリを示すチル...
-
【Google Apps Script】「ライ...
-
エラー行の行数の不思議
-
<script src="">読み込まない
-
ひとつの外部ファイルに複数の...
-
静的と動的なJavascriptの同時...
-
外部.jsの内容を一部置き換えて...
おすすめ情報