2017-08-16 19 views
0

私はこの手順を踏んで、デモHTMLを書きました。最新 からWebページにリンクするためのJavaScriptファイルjs/dist/commonmark.jsスタンドアロン、 適しを 生成、またはフェッチするcommonmark.jsをローカルHTMLファイルにロードするには?

クライアント側で使用するために、あなたがmake distを行うことができます。ここではhttps://github.com/commonmark/commonmark.js#commonmarkjsのREADMEの手順は、 https://raw.githubusercontent.com/jgm/commonmark.js/master/dist/commonmark.js, またはbower install commonmark

ここは私のデモHTMLです。ここで

<!DOCTYPE html> 
<html> 
    <head> 
     <meta charset="UTF-8"> 
     <script src="https://raw.githubusercontent.com/jgm/commonmark.js/master/dist/commonmark.js"></script> 
     <script> 
     window.onload = function() { 
      console.log(commonmark) 
     } 
     </script> 
    <body></body> 
</html> 

は私のデモのためJSFiddle URLです:https://jsfiddle.net/y3xohp7x/

私はfoo.htmlという名前のファイルにローカルに、このHTMLを保存するとFirefox 55.0.1でこのローカルファイルを開きました。

Firefox 55.0.1で読み込むと、コンソールに次のエラーが表示されます。

Loading failed for the <script> with source “https://raw.githubusercontent.com/jgm/commonmark.js/master/dist/commonmark.js”. foo.html:5 
ReferenceError: commonmark is not defined foo.html:9:5 

質問:

  1. なぜこのエラーが発生しますか。
  2. commonmark.jsをローカルファイルシステムにコピーせずにこのエラーを解決するにはどうすればよいですか?
  3. 私が上記で引用したcommonmark.js READMEドキュメントのバグですか、ドキュメントの理解に誤りですか?

答えて

0

編集

実際には、明らかに特にgithubのコンテンツのためにこれを行う方法があります:https://rawgit.com/

当サイトは、あなたに提供されるスクリプトのバージョンへのリンクを提供します正しいMIMEタイプで

だから、これがあなたのために適切にスクリプトをロードする必要があります

<script type="application/javascript" src="https://cdn.rawgit.com/jgm/commonmark.js/master/dist/commonmark.js"></script> 

https://jsfiddle.net/w1uvq59r/


オリジナル回答

理由は、スクリプトのソースがヘッダに送り返されるということです:

"Content-Type": "text/plain" 
"X-Content-Type-Options": "nosniff" 

"application/javascript"のようにcontent-typeが実行可能でないため、後者のヘッダーはブラウザがスクリプトを実行できないようにします。残念ながら、実際にスクリプトをリモートからロードする方法はありません。Here is a thread with more information on a similar problem.


唯一の解決策は、私の知る限り、そのように、それをローカルにロードすることです:

<script type="application/javascript" src="path/to/the/file.js"></script> 
+0

あなたは私が求めているすべての3つの質問に答えることはできますか? –

+0

私は、うまくいけば明快さを追加するために私のコメントを編集しました。なぜあなたはローカルでスクリプトを使用することができないのですか? –

+0

このスクリプトをローカルで使用することは特にありません。私は学習のための可能性を模索しています。たとえば、スクリプトのGitHub URLに直接リンクすることができれば、スクリプトのローカルコピーを定期的に更新することについて心配する必要はありません。 –

関連する問題