忙しい現代人の腰&肩のお悩み対策!

初心者です。あまりに初歩的なことなのではずかしいのですが教えて頂けますと幸いです。
本を片手にjQueryを勉強し始めました。(JavaScriptの初歩は勉強しました。)
jQueryを記述したものを『script.js』という外部ファイルで保存し、htmlファイルにリンクし参照させています。

ブラウザでテストしてみたところ、きちんと動作します。
ただ、『script.js』ファイルを開こうとクリックするとWindows Script Hostのエラーウィンドウ「エラー:文字が正しくありません」 と表示されてしまいます。
文字コードや全角スペースが混ざっていないか等、色々と試しましたが相変わらずエラーで困っています。
外部ファイルに記述、というのが理解不足の初心者には難しいのかとも思うのですが…。


htmlファイルのソースは以下の通りです。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<title>sample1</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3. …
<script type="text/javascript" src="script.js" charset="UTF-8">
</script>

</head>
<body>
<ul>
<li>テキストテキストテキストテキストテキスト</li>
<li>テキストテキストテキストテキストテキスト</li>
<li>テキストテキストテキストテキストテキスト</li>
<li>テキストテキストテキストテキストテキスト</li>
</ul>
</body>
</html>

また、問題の『script.js』ファイルは以下のように記述しています。

$(function(){
$("li").css("color","red");
});

このQ&Aに関連する最新のQ&A

A 回答 (4件)

#2 です。



結局、#2 の方法でjsファイルを開けたのでしょうか?開けなかったのでしょうか?

> Microsoft Jscript コンパイルエラー
JavaScript を「JScript Script File」として実行しようとしているのですから、エラーが発生するのが自然です。
「JScript Script File」として何か希望する動作があって実行させたいのなら、修正する必要がありますが…。

> 以前、jsファイルを作成して試していた時にはダブルクリックで開けていた気がしたので
関連付けを変更すれば、ダブルクリックで開けます。

Windows XP でファイルをダブルクリックしたときに起動するプログラムを変更または選択する方法
http://support.microsoft.com/kb/307859/ja
    • good
    • 0
この回答へのお礼

何度も申し訳ありません!
ご回答ありがとうございます。

think49様にご回答いただいたやり方で開けて編集出来ています。

>JavaScript を「JScript Script File」として実行しようとしているのですから、エラーが発生するのが自然です。
>「JScript Script File」として何か希望する動作があって実行させたいのなら、修正する必要がありますが…。

この度のご回答もありがとうございます!

やっと分かりました…。
何度もご回答頂き本当にありがとうございました。

お礼日時:2010/08/01 15:42

>ただ、『script.js』ファイルを開こうとクリックするとWindows Script Hostのエラーウィンドウ「エラー:文字が正しくありません」 と表示されてしまいます。



うん。それが正常な動作ですが…
javascript ファイルをクリックしてテキストエディターで開きたいなら、拡張子「*.js」ファイルの関連付けを変更してください。
ファイルの関連付けの変更方法は「フォルダオプション」で Google 先生に訊いてみて。

>JavaScriptの初歩は勉強しました。

えーーー!
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
本当に初歩中の初歩を勉強中の超初心者です…。
もう少し頑張って調べてみます…。
分かりにくい質問にどうもありがとうございました…!

お礼日時:2010/07/30 23:57

> <script type="text/javascript" src="script.js" charset="UTF-8">


このファイルを Windows OS のエクスプローラでダブルクリックして開こうとしている、ということかな?

Windowsでは jsファイルを「JScript Script File」として扱います。
JScript と JavaScript は別物なので、混同しないように注意して下さい。

JavaScriptのコードを書き換えたいのなら、script.js を右クリックして [編集] でメモ帳で開けます。
あるいは、お好きなテキストエディタから [ファイル] -> [開く] なり、script.js を D&D でテキストエディタに放り込むなり、.js をテキストエディタで関連付けするなりしても良いです。

この回答への補足

こちらの質問とほぼ同じ内容でした。
http://detail.chiebukuro.yahoo.co.jp/qa/question …

Microsoft Jscript コンパイルエラーの
「行:1 
文字:1 
エラー:文字が正しくありません 
コード:800A03F6
ソース:Microsoft Jscript コンパイルエラー」

というものでした。
もう少ししっかり調べてみます…。
すみませんでした…。

補足日時:2010/07/31 00:13
    • good
    • 0
この回答へのお礼

ありがとうございます!
仰る通りです。言葉が足らず、お恥ずかしい限りです…。
以前、jsファイルを作成して試していた時にはダブルクリックで開けていた気がしたので(ただの勘違いだったようです。ただ、その時はダブルクリックしても「文字が正しくありません」コンパイルエラーは出ませんでした…)、どうにも不安になってしまい…
困っていました。
記述した内容が間違っているのかな、とも思うのですが…。

お礼日時:2010/07/30 23:51

『script.js』ファイルを開こうとクリックすると...



==>どこ(何)から、クリックしてるんですか?
Webページ上には『script.js』は無いはず。

 Windowsのエクスプローラで、ローカルの『script.js』をクリックしてるって事?
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
言葉足らずで、本当に申し訳ありません…。
仰る通りです。
ただの勘違いかもしれませんが、
以前、jsファイルを作成して試していた時にはダブルクリックで開けていた気がしたので(ただの勘違いだったようです。ただ、その時はダブルクリックしても「文字が正しくありません」というエラーは出ませんでした…)、どうにも不安になってしまい…。

また以前作成したjsファイルをダブルクリックした時には「文字が正しくありません。コンパイルエラー」とのエラーメッセージが出なかったので、記述内容が間違っているのかなと思います…。

お礼日時:2010/07/30 23:54

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q外部ファイルJS参照を全て消さないと「文字が正しくありません」エラー

実に不思議なのですが、
以下のように4つのJSファイルをインクルードしているHTMLファイルを
ローカルで開くと「文字が正しくありません」とスクリプトエラーが何回かでます。

ですが、script1~4.js の行を全てコメントアウトすると、エラーはでません。

1~4のどれかにエラーが含まれているのかと、一つ一つを外してみましたが、
どの行を外しても、やはり「文字が正しくありません」と出てしまいます。

ローカルの然るべきパスに1~4はあります。また、HTML同様、JSもEUCになってます。

何が原因なのでしょうか?

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<title>タイトル</title>
<meta http-equiv="content-type" content="text/html; charset=euc-jp">
<meta http-equiv="content-script-type" content="text/javascript">
<meta http-equiv="content-style-type" content="text/css">
<link href="../css/style.css" rel="stylesheet">
<script src="../js/script1.js" type="text/javascript"></script>
<script src="../js/script2.js" type="text/javascript"></script>
<script src="../js/script3.js" type="text/javascript"></script>
<script src="../js/script4.js" type="text/javascript"></script>
</head>

実に不思議なのですが、
以下のように4つのJSファイルをインクルードしているHTMLファイルを
ローカルで開くと「文字が正しくありません」とスクリプトエラーが何回かでます。

ですが、script1~4.js の行を全てコメントアウトすると、エラーはでません。

1~4のどれかにエラーが含まれているのかと、一つ一つを外してみましたが、
どの行を外しても、やはり「文字が正しくありません」と出てしまいます。

ローカルの然るべきパスに1~4はあります。また、HTML同様、JSもEUCになってます。

何が原...続きを読む

Aベストアンサー

#4 の者ですが、あの~本当にディレクトリ構成には問題なかったのですか???

>(1) スクリプトエラーになる
>C:\Documents and Settings\user_name\デスクトップ\index.htm とおき、
>C:\Documents and Settings\user_name\デスクトップ\js\ に、script1~4.js をおく。

この構成の場合、
<script src="./js/script1.js" type="text/javascript"></script>
と、”./~” 同じディレクトリという指定でピリオドは2つでなく1つです。
ピリオドが2つという事は1つ上の階層という事で、
C:\Documents and Settings\user_name\js\ に、script1~4.js をおく必要があります。

#4 で示した b1 の件でひっかかっています。


尚、
>(2) スクリプトエラーにならない
>C:\Documents and Settings\user_name\デスクトップ\NewFolder\index.htm とおき、
>C:\Documents and Settings\user_name\デスクトップ\NewFolder\js\ に、script1~4.js をおく。

は、HTMLで
C:\Documents and Settings\user_name\デスクトップ\js\ に、script1~4.js をおく事を要求していて、
(1) の検証環境が残っているとそれを見に行っていますが。
逆に(1) の検証環境がなければこれもエラーです。


(3) はたぶん上位の階層がないのでブラウザが補正して同じ階層のフォルダを見に行っているのでしょう。

#4 の者ですが、あの~本当にディレクトリ構成には問題なかったのですか???

>(1) スクリプトエラーになる
>C:\Documents and Settings\user_name\デスクトップ\index.htm とおき、
>C:\Documents and Settings\user_name\デスクトップ\js\ に、script1~4.js をおく。

この構成の場合、
<script src="./js/script1.js" type="text/javascript"></script>
と、”./~” 同じディレクトリという指定でピリオドは2つでなく1つです。
ピリオドが2つという事は1つ上の階層という事で、
C:\Doc...続きを読む

Q外部ファイルにしたら文字化けしてしまいました

FC2ブログで下記【1】を

<script type="text/javascript">
<!--
【1】
// -->
</script>

で囲んで直接プラグインに書き込んだら
文字化けせずに表示されたのですが、

外部ファイルにして

<script type="text/javascript" src="【1】のJSファイルのパス"></script>

をプラグインに書き込んだら、
画像リンクはうまく表示されたのですが、
文字化けしてしまいました。

文字化けしない方法はないでしょうか?


【1】
// ランダムに画像を表示する
jmp = new Array();
img = new Array();
// ジャンプ先のアドレス(数字は画像と対応)
jmp[0] = "http://~";
jmp[1] = "http://~";
jmp[2] = "http://~";
jmp[3] = "http://~";
jmp[4] = "http://~";
// 画像のアドレス(数字はジャンプ先のアドレスと対応)
img[0] = "img/img1.jpg";
img[1] = "img/img2.jpg";
img[2] = "img/img3.jpg";
img[3] = "img/img4.jpg";
img[4] = "img/img5.jpg";
n = Math.floor(Math.random()*jmp.length);
document.write("<a href='"+jmp[n]+"' target='_blank'>");
document.write("<img src='"+img[n]+"' border='0'>");
document.write("</a>");

FC2ブログで下記【1】を

<script type="text/javascript">
<!--
【1】
// -->
</script>

で囲んで直接プラグインに書き込んだら
文字化けせずに表示されたのですが、

外部ファイルにして

<script type="text/javascript" src="【1】のJSファイルのパス"></script>

をプラグインに書き込んだら、
画像リンクはうまく表示されたのですが、
文字化けしてしまいました。

文字化けしない方法はないでしょうか?


【1】
// ランダムに画像を表示する
jmp = new Array();
img = new Array();
// ジャンプ先...続きを読む

Aベストアンサー

自分は5歳児だろうが主婦だろうが手は抜きません。


とりあえず試しに、

<script type="text/javascript" src="JSファイルへのパス" charset="Shift-JIS"></script>

~と言う風にしてみて下さい( charset="Shift-JIS" というのを付け足す)。それで文字化けが直るようなら、貴方のJSファイルの文字コードは「Shift-JIS」と言う事になります。FC2のBlogサービスですか?それでHPやBlogを作っているのなら、基本的には文字コードはサーバ側、つまりこの場合は「EUC-JP」に統一するべき~という事になります。

一般的に、Windowsの標準の環境だと。前段で述べた様な、様々な種類の文字コードを扱う事が出来ないので。事実上、作業は「Shift-JIS」1択と言う事になります。また『メモ帳(notepad.exe)』では「改行コード」を編集出来ないので、HTMLやJavaScript(JSファイル)を編集するには力不足です。何か特別なソフトとかを使わずに、Windows標準の『メモ帳(notepad.exe)』でJSファイルを編集したのであれば、十中八九、文字コードは「Shift-JIS」になっているはずです。


>文字コード
「文字コード」とは、コンピュータ上でテキストファイル(*.txt)をやり取りする時の方式の事で、現在では100種類近くの文字コードがあります。インターネット上でよく使われる文字コードは、「UTF-8」、「Shift-JIS」、「EUC-JP」~の3種類で、基本的にはこれだけ押さえておけばOKです。

考え方としては、日本語や英語のように。同じ意味を持つ文書でも色んな国の言葉で書く事が出来る様に。コンピュータ上での文書の表し方にも方言というか、色んな国の言葉がある様な物だと思ってて下さい。先に述べた「改行コード」や「BOM無し」とかは忘れて下さい。

で、初心者はコレだけ覚えて置いて欲しいのですが…

・半角英数文字だけなら文字化けは起きない

~と(実際は違いますが、話がややこしくなるので簡単にします)。半角英数文字ってのは「abc,?!#123456+-=」みたいな文字の事です。全角文字とは違うので注意して下さい(全角文字 → abc,?!#123456+-=)。従って逆説的に言えば「日本語を使う時は常に文字コードの影響を受ける」と言う事です。

自分は5歳児だろうが主婦だろうが手は抜きません。


とりあえず試しに、

<script type="text/javascript" src="JSファイルへのパス" charset="Shift-JIS"></script>

~と言う風にしてみて下さい( charset="Shift-JIS" というのを付け足す)。それで文字化けが直るようなら、貴方のJSファイルの文字コードは「Shift-JIS」と言う事になります。FC2のBlogサービスですか?それでHPやBlogを作っているのなら、基本的には文字コードはサーバ側、つまりこの場合は「EUC-JP」に統一するべき~という事になります。

...続きを読む

QVBS実行時エラー オブジェクトがありません 回避方法について

タイトルの件ですが、現在CSVよりIDとPWを読み込み、Webページに自動ログインできるVBSを作成しております。
ネットの情報を頼りに下記ソースを作成し、自動ログインできるところまでは達成しました。
しかしながら、一回目の実行時はいいのですが、二回目以降時間を置かずにVBSを起動すると
エラーが発生します。(IEは起動し、ログイン自体は出来ます)
本エラーの回避方法をご教授願えませんでしょうか。

エラーの発生場所は objIE.Document.getElementsByName("username")(0).Value = SiteID
あたりだとは思うのですが、何が原因かがわからなく。。

○エラーメッセージ
エラー:オブジェクトがありません。:'objIE.Document.getElementByName(...)(...)'
コード:800A01A8
ソース:Microsoft VBScript 実行時エラー

○コード
'Option Explicit

Dim tmp 'CSV格納
Dim tmp2 'CSV分割
Dim SiteArray(10) 'ID,PW,URL格納
Dim SiteURL 'URL格納
Dim SiteID 'ID格納
Dim SitePW 'PW格納

Dim i
dim objFSO
dim stmCsvFile

'URL,ID,PWをCSVより読込
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set stmCsvFile = objFSO.OpenTextFile("C:\Users\***\Desktop\login.csv")

Do Until stmCsvFile.AtEndOfLine = True
tmp = stmCsvFile.readline
tmp2 = Split(tmp, ",")
SiteArray(i) = tmp2(1)
i = i + 1
Loop

stmcsvfile.Close


'URL,ID,PWを格納
SiteID = SiteArray(1)
SitePW = SiteArray(2)
SiteURL = SiteArray(0)

'---------- ひらく

Set objIE = CreateObject("InternetExplorer.application")
objIE.Visible = True
objIE.Navigate SiteURL
Do Until objIE.busy = False And objIE.readyState = 4 : Loop '待ち合わせ

'---------- ID/PASSの入力

objIE.Document.getElementsByName("username")(0).Value = SiteID
objIE.Document.getElementsByName("password")(0).Value = SitePW

'---------- SUBMIT

objIE.Document.getElementsByName("login_form")(0).Submit
Do Until objIE.busy = False And objIE.readyState = 4 : Loop '待ち合わせ

'----------

宜しくお願い致します。

タイトルの件ですが、現在CSVよりIDとPWを読み込み、Webページに自動ログインできるVBSを作成しております。
ネットの情報を頼りに下記ソースを作成し、自動ログインできるところまでは達成しました。
しかしながら、一回目の実行時はいいのですが、二回目以降時間を置かずにVBSを起動すると
エラーが発生します。(IEは起動し、ログイン自体は出来ます)
本エラーの回避方法をご教授願えませんでしょうか。

エラーの発生場所は objIE.Document.getElementsByName("username")(0).Value = SiteID
あたりだ...続きを読む

Aベストアンサー

こんにちは。

>コメント頂いた箇所を下記の通り処理を変更しましたが現象はほぼ変わりませんでした。

#1で私の書いた、IsObjectは一般論ですが、個別の問題になるとかなり話は込み入ってしまうから、やめておいたことですが、なんといっても、VBSで、どのように開発しているかは分かりませんが、そのオブジェクトのプロパティとか、確認をして開発したのでしょうか。

>Set upw =objIE.Document.getElementsByName("password")
の時点で、upw を確認できない状態ですと、
upw(0) という「添字(index)」があるかどうかさえ確認できませんよね。
その辺りはどうなんでしょうか?それで、Length プロパティを調べるように書いたわけです。

ふつう、例えば、ここの「教えて!goo」なんかでも、IDとパスワードは、きちんと、[ID(uname, pass)]を持っています。そしてIDには、添字は存在しません。

VBAがあれば、VBEditorのローカルウィンドウで、そのプロパティを確認していただくしかないと思います。もしかしたら、最初からとれていないのかもしれません。

こんにちは。

>コメント頂いた箇所を下記の通り処理を変更しましたが現象はほぼ変わりませんでした。

#1で私の書いた、IsObjectは一般論ですが、個別の問題になるとかなり話は込み入ってしまうから、やめておいたことですが、なんといっても、VBSで、どのように開発しているかは分かりませんが、そのオブジェクトのプロパティとか、確認をして開発したのでしょうか。

>Set upw =objIE.Document.getElementsByName("password")
の時点で、upw を確認できない状態ですと、
upw(0) という「添字(index)」があるか...続きを読む

Q

人気Q&Aランキング