So laden Sie eine externe Webseite in einen Teil einer HTML-Seite

70

Ich muss eine reaktionsfähige Website in ein div in meiner HTML-Seite laden, ohne ein iframeElement zu verwenden.

Ich habe diesen Link ausprobiert . Es funktioniert für eine einzelne Seiten-URL, die ich im Skript erwähnt habe.

$('#mydiv').load('http://localhost/qa/ask#external-div', function(response, status, xhr) {
    if (status == "error") {
        var msg = "Sorry but there was an error: ";
        alert(msg + xhr.status + " " + xhr.statusText);
      }
});
user2089987
quelle
Haben Sie die Erlaubnis der externen Websitebesitzer, dies zu tun? Das Einrahmen einer anderen Website innerhalb Ihrer eigenen ist "verpönt" (wenn nicht eine offensichtliche Verletzung des Urheberrechts).
Gone Coding
Ich habe versucht, eine externe Website mit jquery in meiner Webseite div anzuzeigen. Es funktioniert jedoch für eine einzelne Seite der externen Website. Ich muss die gesamte externe Website (alle Seiten) innerhalb einer div auf meiner Webseite anzeigen.
user2089987
4
Es ist keine Erlaubnis erforderlich, da ich versuche, eine meiner eigenen Webseiten in einem Teil meiner anderen HTML-Webseite
anzuzeigen

Antworten:

116

Mit einfachem HTML,

 <div> 
    <object type="text/html" data="http://validator.w3.org/" width="800px" height="600px" style="overflow:auto;border:5px ridge blue">
    </object>
 </div>

Oder jquery,

<script>
        $("#mydiv")
            .html('<object data="http://your-website-domain"/>');
</script>

JSFIDDLE DEMO

Optimus Prime
quelle
1
Wenn ich so verwendet habe, erhalte ich die Bildlaufleiste, wie wir sie beim Implementieren von iframe in einer div.can erhalten. Sie können eine andere Möglichkeit angeben, eine Website auf einer HTML-Seite
anzuzeigen
Sie können die Bildlaufleisten ausblenden, wenn Sie möchten.
Optimus Prime
hinzufügen overflow:hiddenzu dem Iframe oder obeject.
Optimus Prime
1
mwell, Sie verwenden jquery, richtig? ...$("#myContainer").css("overflow","hidden");
TCHdvlp
1
@Optimus Prime, ja, es funktioniert (FF 27.0), keine Ahnung, wie Ihre Ansicht ist, aber die angezeigte Bildlaufleiste ist die des Geigen-HTML-Elements. Wenn Sie sich die erste Geige ansehen, sehen Sie 2 Bildlaufleisten. Oder interpretiere ich falsch?
HenryW