Bestimmter Ausschnitt einer Website in eine andere Website einbetten Html?

5 Antworten

Geht besser mit jQuery

<div id='iframediv'>
</div>
<script>

$('#iframediv').load('https://www.url.bsp #DIV_ID');

</script>

Das funktioniert aus Sicherheitsgründen natürlich nur für Seiten auf derselben Domain.


Llandyl  16.02.2017, 13:49

Sorry, war Blödsinn, ist ja ne andere Domain...

Habe nochmal gesucht und was Schönes gefunden:

<div style="border: 3px solid rgb(201, 0, 1); overflow: hidden; max-width: 736px;">
<iframe scrolling="no" src="http://www.gastronavi.de/restaurants/10076/speisekarten/speisekarte" style="border: 0px none; margin-left: -185px; height: 650px; margin-top: -200px; width: 926px;">
</iframe>
</div>

Mit den CSS-Attributen margin-left und margin-top am iframe kannst du die Positionierung des Ausschnitts einstellen. Wenn du die Werte änderst, musst du gleichzeitig die width und height um das negative des entsprechenden Wertes anpassen, damit der Kasten gleich groß bleibt.

Effektive Breite und Höhe des Kastens sind width + margin-left, bzw. height + margin-top.

Wichtig ist das scrolling="no" am iframe und das overflow: hidden am umgebenden div.

Du kannst die Seite per Ajax laden und dann den Teil extrahieren - das ist dann aber reines HTML ohne Styles usw. 

Woher ich das weiß:Berufserfahrung – 20 Jahre Berufserfahrung

Kieselsaeure  16.02.2017, 16:38

u.U. je nach header noch nicht mal das

Nimm doch in php zb curl etc und schneide das unnötige raus/hole nur was du willst

Das dürfte nur mit HTML / CSS / JS nicht funktionieren, du könntest die Seite aber mit PHP laden (via file_get_contents() bzw cURL) und dir da nur den gewünschten Teil raussuchen (z.B. via RegEx / preg_match()). Dann kannst du das beliebig auf deiner Seite anzeigen, sogar ohne iFrame. 

Ich würde die Daten aber zumindest cachen, wenn die jedes Mal geholt werden bekommst du möglicherweise sonst Ärger mit dem Betreiber der Seite (je nachdem wie häufig deine aufgerufen wird, bei irgendwie 5-10 Besuchern am Tag wird das keinem auffallen, bei 500-1000 schon eher^^).