2017-07-26 8 views
-4

map.HTMLヘッダーで2つのJSファイルを参照しています。 ChromeのコンソールはJSファイルの<!DOCTYPE html>

Uncaught SyntaxError: Unexpected token < 

です。なぜ私は混乱しているのですか。 Chrome Consoleのエラーメッセージをクリックすると、[送信元]タブに移動します。ソースの下では、私は相対的なJSタブに置かれ、<で始まるコードを表示します!DOCTYPE html>は、map.htmlファイルまたはJSファイルにない大量のコードを続けます。おそらくこれはJSが読み込まれたときに生成されますか?

2つのJSファイルは、次のとおりです。私はバッチファイルを使用して、簡単なPythonのサーバーを使用してChromeでローカルにmap.HTMLを開封しております

https://github.com/socib/Leaflet.TimeDimension/tree/master/dist https://github.com/calvinmetcalf/leaflet-ajax/tree/gh-pages/dist

(python.exe -m http.server)。

私はこれが非常に基本的だと確信していますが、他の多くのJSファイルをオンラインとローカルで参照しているため、このエラーは発生しません。

おかげで将来的には

+0

HTMLはcodepenにあります:https://codepen.io/LeevGG/pen/OjVMJM – drivetosave

+3

Javascriptファイルは '<!DOCTYPE ...>'で始まっていません。あなたが参照しているURLはJavascriptファイルでもありません。 –

+0

jsは '<!DOCTYPE html>'またはdoctypeをまったく使用しません...これはHTML用です.. – ThisGuyHasTwoThumbs

答えて

3

ブラウザでhttps://github.com/socib/Leaflet.TimeDimension/blob/master/dist/leaflet.timedimension.min.jsを試してみると、HTMLページが表示されます。

https://raw.githubusercontent.com/socib/Leaflet.TimeDimension/master/dist/leaflet.timedimension.min.jsを試してみると、ソースのjavascriptファイルがどのようにつながっているかがわかります。しかし、あなたのブラウザはtext/htmlと考えるかもしれません。なぜなら、githubがcontent-typeヘッダで送るものなのですから。

コンテンツタイプヘッダーが適切なファイル(たとえば、https://rawgit.com/socib/Leaflet.TimeDimension/master/dist/leaflet.timedimension.min.js)を提供するサードパーティサイトを使用できます。

+0

私はオンラインで(たくさんの)リサーチを行った後、rawgit.comのアプローチを試みましたが、正しくロードされているかどうかはわかりませんでした。コンソールはリンクを赤で強調表示し、GET(赤で表示)とラベル付けしました。私が本当に混乱しているのは、なぜこの2つが他の人たちが問題を引き起こすのかということです。彼らのユニークな点は何ですか? – drivetosave

+0

これは私のJSローディングを持っていますが、それでもコンソールのREDにラベルを付けています。私はそれについていくつか読んでいくと思います。ありがとう。 – drivetosave

0

は、ここに投稿する前に、より多くの研究をしようと、そうでない人の多くは、あなたの質問にdownvoteしようとしている、とも、あなたを侮辱。

htmlとjavascriptの違いをGoogleが簡単に検索できるようになるのは良いスタートです。最初のステップは、それらのdoctype行を削除することです。彼らはJavascriptで何も意味しません。ただ、granolaのように日本語では意味がありません。異なる言語。

あなたのコードを見ると、私はあなたのjavascriptにDOCTYPEのテキストが表示されません。これを実際にデバッグするには、ブラウザでウェブページ(HTML)を開き(Chromeをお勧めします)、F12を押して開発ツールを開くことになります。コンソールに移動し、すべてのファイルを元に戻してエラーをトレースし、起点を見つけます。

javascriptファイルを取得し、htmlではないことを確認するには、使用しているすべてのsrc URLを取得し、ブラウザに貼り付けます。あなたがウェブページ上に着陸すれば、そのURLはあなたが望むようなjavascriptではなくhtmlを提供します。あなたがテキストの壁を得るなら、あなたはおそらくそれを正しく参照しているでしょう。正しい

https://api.mapbox.com/mapbox.js/v3.0.1/mapbox.js

誤った:この質問を削除または保留にされる前にhttps://github.com/socib/Leaflet.TimeDimension/blob/master/dist/leaflet.timedimension.min.js

がうまくいけば、このことができます。また、実際に答えるのを助けようとしている人々が私にdownvoteしようとしていることに気づく。

+0

ありがとうございます。それは私がやっていることであり、それに応じて自分の投稿を更新しました。 – drivetosave

+0

'<!DOCTYPE html>'宣言が好きではないcodepenウェブサイトを使用しているので、少し複雑です。 – toshiomagic

+0

質問の参考としてそこにロードしました。私はそれをテストに使用していません。 – drivetosave

0

githubリポジトリに格納されているコードを直接参照することはできません。

表示しているURLはjavascriptファイルではありません。彼らはgithubのウェブページです。だからこそ、彼らはHTMLのdoctypesとあなたが認識できないコードを含んでいます - それはgithubウェブサイトのコードです。

実際のjavascriptファイルのURLは、特定の個々のファイルを選択した後で、そのページの上部にある「生の」ボタンをクリックすると表示されます(URLは個々のファイルではなくディレクトリです)。 )例:

これは、HTMLファイルされる:https://github.com/socib/Leaflet.TimeDimension/blob/master/dist/leaflet.timedimension.min.js

これは、生のjavascriptです: https://raw.githubusercontent.com/socib/Leaflet.TimeDimension/master/dist/leaflet.timedimension.min.js

(私はそれがCDNのようにgithubのを治療するための良いアイデアだとは思わない、と述べたこと;通常は、これを純粋にリポジトリとして使用し、行為を主催します他の場所で使用されているファイルを参照してください)

+0

ありがとう、それは役立ちます。私はGithubでホストされているJSを参照する最良の方法がわからず、一貫した「ベストプラクティス」アドバイスをオンラインで見つけていませんでした(完全な新人のために書かれています)。 – drivetosave

関連する問題