2016-05-12 9 views
0

私のコースの練習を完了しようとしています。私のHTMLファイルは私のJavascriptファイルとリンクしません。 HTMLファイルとJavaScriptファイルのリンクをHTMLファイルの本文に入れますが、ファイルはまだ接続されません。 Microsoft Edgeでこのコードをテストすると、ボタンが機能しなくなります。誰が問題が何であるか知っていますか?私のHTMLファイルは私のJavascriptファイルにリンクされません

HTML

<!DOCTYPE html> 
    <html lang="en-US"> 
     <head> 
      <title>HTML Page</title> 
      <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
     </head> 
     <body> 
      <button onclick = "startWorker()">Start Worker</button> 
      <button onclick = "stopWorker()">Stop Worker</button> 
      <ul id = "output">  
      </ul> 
      <script type = "text/javascript" src = "/js/script.js"></script> 
     </body> 
    </html> 

Javascriptを

var worker; 
function startWorker(){ 
    worker = new Worker ("js/mod4_worker.js"); 
    worker.onmessage = function(event){ 
     document.getElementById("output").innerHTML += '<li>' + event.data + '</li>'; 
    }; 
} 
function stopWorker(){ 
    worker.terminate(); 
} 

Directory Structure

Files

+2

devツールでは何が表示されますか? – SLaks

+0

おそらくその文字列に '' /js/mod4_worker.js ''が必要なようです。 HTMLファイルを読み込むブラウザのアドレスは何ですか? – Phil

+0

相対パス "../js/script.js"を試してください。それ以外の場合は、HTMLファイルとJSファイルのURLを指定します。ワーカーJSファイルのパスはあまり良くないかもしれません。 URLなしで言うのは難しい。これは実際のファイル構造ですか? @PhilワーカーはJSファイルを読み込み、ページに追加する必要はありません。 –

答えて

2

だから、私は私のコメントをしようとするだろう:

  • 変更にscript.jsパス: "../js/script.js"
  • 変更作業員渡されたスクリプトに」../js /mod4_worker.js "

GGGによれば、"/"で始まるパスをスラッシュで使用すると、ルートからのパスを使用します。

  • Windowsの場合:ファイル://ドライブ文字:\ REST_OF_PATH
  • のUnix/Linuxの/ OSX:ファイル:/// REST_OF_PATH
  • のWebServer:http://domain/REST_OF_PATH

もし完全なパスのいずれかであります構造は/ webappの/からです:

  • のhtml/index.htmlを
  • JS/script.js

index.htmlからscript.jsにアクセスすると、1つのフォルダ(..)に戻り、ここに表示されているパス(js/script.js)を設定する必要があります(../js/script .js)または完全パス(/webapp/js/script.js)を使用してください。私は場所やURL(WebServer上)の "webapp"ディレクトリを変更した場合は推奨しません。

+0

この変更により、ファイルを読みやすくなりました。しかし、それは問題を解決しません。とにかく、チップのおかげで。 – TheZombieCloud

+0

ブラウザでは、devのツールでは、ネットワークタブ(リロードは何も見えない場合)は、そこにscript.jsファイルですか?ファイルに404エラーがありますか? –

+0

devツールの[ネットワーク]タブにscript.jsはありません。 – TheZombieCloud

0

Yから/を削除index.htmlのsrcを参照してください。だからそれはする必要があります

src = "js/script.js" 

なぜですか? /でsrc値を開始すると、絶対パスを参照していることになります(つまり、ドライブのルートからパスを開始します)。私のデベロッパーツールはまず/あなたのSRCには、あなたが今やっている相対パス機能を除去することにより

file:///C:/js/script.js 

としてそれを示しており、それが正しい場所になります。

+1

"/"を削除すると、 "HOMEWORK"フォルダ内の "js"ファイルが検索されます。 "js"ファイルはその外部にあります。しかし、ヒントをありがとう。 – TheZombieCloud

関連する問題