Frage

function publish(text) {
 $('#helpdiv').prepend(text);
}

function get_help(topic) {
  $.get(topic, publish);
}

<p>Hi. <a href="#" onclick="get_help('inline-help.html'); return false;">click here for more help.</a></p>
<div id="helpdiv"></div>

Ich habe dieses Stück von HTML und Javascript geerbt oben (Snippet). Es wird / würde als lokale Hilfe verwendet werden. Derzeit ist es nur online und es funktioniert gut. Allerdings, wenn ich die Dateien lokal zu kopieren, ich „Zugriff verweigert“ in Internet Explorer erhalten und in Chrome nichts tut, wenn ich „für weitere Hilfe hier klicken“. Was es sollte tun ist, um die Hilfeinhalte von Inline-help.html zu laden und zeigt sie in der helpdiv div. Hier ist der Kicker, wenn ich die gleichen Dateien nehmen und kopieren Sie sie auf meinem PC inetpub und laden sie als http: // localhost / hello.html es funktioniert perfekt.

Vermutlich ist dies eine Sicherheits Sache, wo die „lokale“ Zone nicht ist mir erlaubt, Dateien von HD des Benutzers zu laden? Aber ich bin nicht wirklich sicher, was los ist und möchte dieses Problem weiter verstehen und möglicherweise mit einer Vermeidung des Problems kommen.

Jede Einsicht wird sehr geschätzt.

War es hilfreich?

Lösung

jQuerys „get“ Anwendungen XMLHttpRequest, die Arbeit nicht auf lokale Dateien, leider. Wenn Sie wirklich lokale Daten holen müssen in der Lage (oder Daten aus einer anderen Domäne) asynchron, sollten Sie dynamische Script-Tags verwenden. Doch das bedeutet die Datendatei als JSON-Daten neu formatiert werden muss.

Andere Tipps

Ich glaube nicht, Ihr Browser erlaubt Ihnen lokal auszuführen Javascript (die file:/// Zugriffsmethode verwendet wird). Aber wenn Sie es aus http://localhost/ laden es funktioniert gut.

Sie müssen entweder auf einer Website zu entwickeln, oder localhost-Server verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top