Altes Köln

Widget:GOV-Test: Unterschied zwischen den Versionen

Aus Altes Köln
Wechseln zu:Navigation, Suche
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 3: Zeile 3:
<div id="widget-container">
<div id="widget-container">
     <div id="content">
     <div id="content">
        <!-- Hier wird der geladene Inhalt eingefügt -->
        <p>Dies ist ein statischer Testinhalt, bevor die Inhalte geladen werden.</p>
    </div>
</div>
<script>
    (function() {
        const serverBaseURL = "https://gov.genealogy.net";
        fetch('https://gov.genealogy.net/item/wikihtml/SCHERGJO54EJ')
            .then(response => {
                if (!response.ok) {
                    throw new Error(`HTTP-Fehler! Status: ${response.status}`);
                }
                return response.text();
            })
            .then(html => {
                console.log('Geladener HTML-Inhalt:', html); // Debugging: Lade HTML-Inhalt in die Konsole


fetch('https://gov.genealogy.net/item/wikihtml/SCHERGJO54EJ')
                // Temporäres DOM-Element erstellen
    .then(response => response.text())
                const tempDiv = document.createElement('div');
    .then(html => {
                tempDiv.innerHTML = html;
        console.log('Geladener HTML-Inhalt:', html);
        document.getElementById('content').innerHTML = html;
    })
    .catch(error => console.error('Fehler beim Laden:', error));


        <p>Dies ist ein statischer Testinhalt.</p>
                // Relativen Links den Server-Base-URL voranstellen
        <table>
                const links = tempDiv.querySelectorAll('a[href^="/"]');
            <tr><th>Header 1</th><th>Header 2</th></tr>
                links.forEach(link => {
             <tr><td>Wert 1</td><td>Wert 2</td></tr>
                    link.href = serverBaseURL + link.getAttribute('href');
        </table>
                });
     </div>
 
</div>
                // Bilder-URLs anpassen
                const images = tempDiv.querySelectorAll('img[src^="/"]');
                images.forEach(img => {
                    img.src = serverBaseURL + img.getAttribute('src');
                });
 
                // Geladenen Inhalt in den Widget-Container einfügen
                const contentDiv = document.getElementById('content');
                contentDiv.innerHTML = tempDiv.innerHTML;
            })
             .catch(error => {
                console.error('Fehler beim Laden des Inhalts:', error);
                // Fallback: Zeige eine Fehlermeldung im Widget
                const contentDiv = document.getElementById('content');
                contentDiv.innerHTML = '<p>Fehler: Inhalte konnten nicht geladen werden.</p>';
            });
     })();
</script>


<style>
<style>
    /* Styling für den Widget-Container */
     #widget-container {
     #widget-container {
        width: 100%; /* Volle Breite des Widgets */
        max-width: 800px; /* Maximale Breite des Widgets */
        margin: 20px auto; /* Zentriert auf der Seite */
        padding: 10px; /* Abstand innerhalb des Containers */
        border: 1px solid #ccc; /* Rahmen um den Container */
        background-color: #f9f9f9; /* Hintergrundfarbe */
        overflow: auto; /* Begrenzung für Inhalte */
    }
    /* Styling für Tabellen innerhalb des Widgets */
    #widget-container table {
        border-collapse: collapse;
         width: 100%;
         width: 100%;
        max-width: 800px;
    }
         margin: 20px auto;
 
         padding: 10px;
    #widget-container td, #widget-container th {
        border: 1px solid #ccc;
         border: 1px solid #ddd;
         background-color: #f9f9f9;
         padding: 8px;
         overflow: auto; /* Begrenzung der Inhalte */
    }
 
    #widget-container th {
         background-color: #f2f2f2;
         text-align: left;
     }
     }
</style>
</style>

Version vom 21. Januar 2025, 13:59 Uhr

Ajax-Variante mit wiki

Dies ist ein statischer Testinhalt, bevor die Inhalte geladen werden.

<script>

   (function() {
       const serverBaseURL = "https://gov.genealogy.net";
       fetch('https://gov.genealogy.net/item/wikihtml/SCHERGJO54EJ')
           .then(response => {
               if (!response.ok) {
                   throw new Error(`HTTP-Fehler! Status: ${response.status}`);
               }
               return response.text();
           })
           .then(html => {
               console.log('Geladener HTML-Inhalt:', html); // Debugging: Lade HTML-Inhalt in die Konsole
               // Temporäres DOM-Element erstellen
               const tempDiv = document.createElement('div');
               tempDiv.innerHTML = html;
               // Relativen Links den Server-Base-URL voranstellen
               const links = tempDiv.querySelectorAll('a[href^="/"]');
               links.forEach(link => {
                   link.href = serverBaseURL + link.getAttribute('href');
               });
               // Bilder-URLs anpassen
               const images = tempDiv.querySelectorAll('img[src^="/"]');
               images.forEach(img => {
                   img.src = serverBaseURL + img.getAttribute('src');
               });
               // Geladenen Inhalt in den Widget-Container einfügen
               const contentDiv = document.getElementById('content');
               contentDiv.innerHTML = tempDiv.innerHTML;
           })
           .catch(error => {
               console.error('Fehler beim Laden des Inhalts:', error);
               // Fallback: Zeige eine Fehlermeldung im Widget
               const contentDiv = document.getElementById('content');

contentDiv.innerHTML = '

Fehler: Inhalte konnten nicht geladen werden.

';

           });
   })();

</script>

<style>

   /* Styling für den Widget-Container */
   #widget-container {
       width: 100%; /* Volle Breite des Widgets */
       max-width: 800px; /* Maximale Breite des Widgets */
       margin: 20px auto; /* Zentriert auf der Seite */
       padding: 10px; /* Abstand innerhalb des Containers */
       border: 1px solid #ccc; /* Rahmen um den Container */
       background-color: #f9f9f9; /* Hintergrundfarbe */
       overflow: auto; /* Begrenzung für Inhalte */
   }
   /* Styling für Tabellen innerhalb des Widgets */
   #widget-container table {
       border-collapse: collapse;
       width: 100%;
   }
   #widget-container td, #widget-container th {
       border: 1px solid #ddd;
       padding: 8px;
   }
   #widget-container th {
       background-color: #f2f2f2;
       text-align: left;
   }

</style>


Variante: Einfacher iframe mit

 

Variante: responsiv mit

<style>

   body {
     margin: 0;
     padding: 0;
     font-family: Arial, sans-serif;
   }
   .iframe-container {
     width: 100%; /* Container hat immer die volle Breite des Viewports */
     position: relative; /* Wichtig für absolute Positionierung */
     padding-top: 56.25%; /* Seitenverhältnis 16:9 */
  
   }
   iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100vw; /* Breite des Viewports */
     height: calc(100vw * 0.5625); /* Höhe proportional zur Breite (16:9) */
     transform-origin: top left; /* Skalierung startet oben links */
   }
   /* Media Queries für kleinere Bildschirme */
   @media (max-width: 768px) {
     iframe {
       transform: scale(0.9); /* Skaliere den iframe-Inhalt */
     }
   }
   @media (max-width: 480px) {
     iframe {
       transform: scale(0.8); /* Weitere Skalierung für kleine Geräte */
     }
   }
 </style>
 





Cookies helfen uns bei der Bereitstellung von Altes Köln. Durch die Nutzung von Altes Köln erklärst du dich damit einverstanden, dass wir Cookies speichern.