2017-04-19 10 views
0

Webページにhtmlとcssを書き込もうとしていますが、ファイルから直接ファイルを開いたときに何も表示されません。同じPCやブラウザからでもftpサーバ経由でアクセスするとうまく動作します。私は解決策をグーグルの検索試してみましたが、私は何もファイルから開いたときにHTMLが機能しない、ftpサーバから機能する

Errors image

Working image

index.htmlを見つけることができませんでした:

<!DOCTYPE html> 
<html> 
<link rel="stylesheet" href="style.css"> 
<script src="https://www.w3schools.com/lib/w3data.js"></script> 

<head lang="en"> 
<meta charset="utf-8"> 
<title>Employee Page</title> 
</head> 

<body> 
<div id="header"></div> 
<br><br> 
<div id="content"></div> 
<div id="footer"></div> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script> 
<script> 
    $("#header").load("header.html"); 
    $("#content").load("startingContent.html"); 
    $("#footer").load("footer.html"); 
</script> 
</body> 
</html> 

header.html

<header> 
<nav id="menu"> 
    <img id="logo" src="Images/logo.png" height="150" style="border: 5px solid black"> 
    <ul> 
     <li> <a href="ftp://wtpa.ddns.net/Site/index.html">Home</a></li> 
     <li> <a href="ftp://wtpa.ddns.net/Site/calendar.html">Calendar</a> 
     </li> 
     <li> <a href="ftp://wtpa.ddns.net/Site/contacts.html">Contacts</a> 
     </li> 

     <li class="dropdown"> 
      <a href="javascript:void(0)" class="dropbtn">File Server</a> 
      <div class="dropdown-content"> 
       <a href="#">Documents</a> 
       <a href="#">GameFiles</a> 
       <a href="#">Videos</a> 
      </div> 
     </li> 
    </ul> 
</nav> 

</header> 

style.css

.menu { 
width: 100%; 
vertical-align:top; 
height:25px; 
float: top; 
} 

ul { 
list-style-type: none; 
margin: 0; 
padding: 0; 
overflow: hidden; 
background-color: #333; 
} 

li { 
float: left; 
font-size: 16px; 
display:inline-block; 
} 

li a, .dropbtn { 
display: inline-block; 
color: white; 
text-align: center; 
padding: 14px 16px; 
text-decoration: none; 
} 

li a:hover, .dropdown:hover .dropbtn { 
background-color: red; 
} 

li.dropdown { 
display: inline-block; 
} 

.dropdown-content { 
display: none; 
position: absolute; 
background-color: #f9f9f9; 
min-width: 160px; 
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); 
z-index: 1; 
} 

.dropdown-content a { 
color: black; 
padding: 12px 16px; 
text-decoration: none; 
display: block; 
text-align: left; 
} 

.dropdown-content a:hover {background-color: #f1f1f1} 

.dropdown:hover .dropdown-content { 

display: block; 
} 

助けてください。ありがとう!

+0

コンソールを確認するためにF12を押すと、エラーメッセージが表示されます。 – moped

+0

このコードを実行するにはMAMPまたはXAMPが必要かもしれませんが、 '.load()'を使用する場合はローカルでは動作しないという要求が、仮想マシンが必要な理由です。 – DaniP

答えて

0

まず、ナビゲーションでは絶対リンクが使用されているようです。

<li> <a href="ftp://wtpa.ddns.net/Site/index.html">Home</a></li> 
<li> <a href="ftp://wtpa.ddns.net/Site/calendar.html">Calendar</a> 
</li> 
<li> <a href="ftp://wtpa.ddns.net/Site/contacts.html">Contacts</a> 
</li> 

さらに、あなたは、あなたのコンソールを起動し、あなたのウェブサイトの一部は、すべての時にロードおよびルーティングを変更することを拒否するかを見ることができます。あなたはセキュリティ上の理由から、明確にこれらのリソースをロードすることはできません

EDIT

。 file://プロトコルでページを実行すると、セキュリティの問題が発生するため、多くの機能が無効になりました。 Node.jsを使用してjavascriptサーバーを作成し、apacheなどをインストールすることなくローカルでホストすることができます。

https://nodejs.org/en/

+0

申し訳ありませんが、最初の投稿に画像を追加するのを忘れてしまいました。私はそれを編集し、サイトの画像を追加しました。エラーが発生していないときは –

+0

@ K.Wardさんにお答えしました。 –

+0

それは私の問題を解決する!お手伝いありがとう!!! –

0

他のファイルはindex.htmlをと同じフォルダにあるかどうかを確認してください。問題はおそらく、他のファイルをローカルに見つけることができないということです。 ディレクトリ内のすべてのファイル(デスクトップなど)をコピーしてから、もう一度やり直してください。地域開発のための

1

典型的な問題は、単にブラウザでファイルのように開いて内容です:

file:// ... 

、その後、いくつかの動的な要素を持つあなたは、エラーを取得することができます:

XMLHttpRequest cannot load file:/// ... Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https. 

ソリューションは、ローカルにweb serverをインストールしていますhttp(s)プロトコルを介して開く - 例えば、 NGINXApacheなどのオンラインサービスをご利用ください。WebCloudなどです。

http:// hereのウォーキングの例を参照してください。

私は助けてくれることを願っています。

+0

助けてくれてありがとう! –

+0

ようこそ。 –

関連する問題