kostenloser Webspace werbefrei: lima-city


Wie öffne ich Iinks in einem iframe im Rahmenfenster?

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    sf-media

    sf-media hat kostenlosen Webspace.

    Ich habe auf meiner Joomla Startseite http://klassik-resampled.de unter dem Reiter Zeitleiste bzw. TImeline eine JS-Zeitleiste auf der html-Seite http://klassik-resampled.de/timeline/timeline.html in einem iFrame/Wrapper in Joomla geöffnet.

    Die Daten für die "Events" der Zeitleiste entnimmt die JS-Timeline der Datei http://klassik-resampled.de/timeline/composer-de2.xml.

    Wer darauf schaut wird bei den ersten Events sehen, dass ich vergeblich versucht habe mit
    "linktarget="_top""
    die links über den iFrame-Rahmen heraus gelten zu lassen. Das ging aber eben nicht.

    Hat jemand eine Idee, wie ich die in dem iframe von der HTML-Seite aufgerufenen Links der .xml-Datei für die gesamte Seite und nicht bloß für den iFrame gelten lassen kann???

    Für jeden Tipp bin mal wieder mächtig dankbar.

    beste Grüße soweit.
    sf-media


  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. sf-media schrieb:
    ... vergeblich versucht habe mit
    "linktarget="_top""
    die links über den iFrame-Rahmen heraus gelten zu lassen. Das ging aber eben nicht.


    Nicht verwunderlich! Die richtige Syntax wäre:

    target="_top"


    Hat jemand eine Idee, wie ich die in dem iframe von der HTML-Seite aufgerufenen Links der .xml-Datei für die gesamte Seite und nicht bloß für den iFrame gelten lassen kann???

    Bin mir nicht ganz sicher, ob ich den Zusammenhang richtig verstehe, aber "tagret='_top' " sollte seinen Job immer erledigen. Wenn nicht, gibt es eventuell ein Problem beim Link-format..

    Habe mir die Seite übrigens gerade mal angeschaut und frage mich: Warum überhaupt ein iFrame? Es gibt doch passende Extensions für Joomla um php-Code direkt in die Artikel einzubinden. Z.B. jumi (bis Joomla 1.6); direct-PHP; add custom PHP

    Beitrag zuletzt geändert: 8.1.2015 3:34:53 von fatfreddy
  4. Autor dieses Themas

    sf-media

    sf-media hat kostenlosen Webspace.

    Danke erstmal für den netten Versuch mir wieder einmal aus der Patsche zu helfen! Aber so einfach geht das (zumindest bei mir ) wohl doch nicht:

    - Bei Add Custm php ist die Dokumentation down so dass ich ehrlich gesagt keine Ahnung habe, wie ich mit dem Plugin umgehen soll, geschweige denn was für Pfade ich da im Pluginbackend zu was für php-dateien angeben soll.
    - mit DirectPHP schaffe ich , dass der Sourcecode der Timeline.html Seite da zu "lesen" ist, wo eigentlich die Zeitleiste aufgerufen werden sollte. Ausgeführt wird aber offenbar nischt. Kann aber auch sein, dass mir auch da etwas dokumentation fehlt. Ich hab das Plugin aktiviert, finde aber nirgends irgendwelche tags mit denen ich den Code für das Pugin einrahmen könnte ...?!

    - Versuche ich es daher dann doch noch einmal mit dem Wrapper, so bringt im .xml-Dokument mit den Events der timeline
    target="_top"
    leider genausowenig wie
    linktarget="_top"


    Ich fürchte, dass das daran liegt, dass die Daten der xml-Datei alle als Attribute des jeweiligen Events gelesen werden und es daher gar nicht darauf kommt noch Attribute wie target="_top" auf einen Link zu beziehen, der im xml-File doch wohl selbst nur ein regulärer Teil eines "Events" ist.

    Ich vermute ehrlich gesagt, das derlei Bestimmungen für den Link eher irgendwo in den JS.Dateien zu suchen oder zu schreiben wären, die ich ja derzeit einfach vom MIT-Server "entlehne", also selbst nicht wirklich ändern kann.

    Am verheißungsvollsten erscheint mir noch das Scheitern mit dem JoomlaPlugin Sourcerer:

    - Mit dem Kopieren der timeline.html sourcerer Plugin in ein Joomla Custum-Modul bekomme folgende Fehlermeldung:
    "Failed to derive URL prefix for Timeline API code files"

    ....und also auch hier erstmal noch keine Zeitleiste.

    Immerhin entnehme ich dem aber doch zumindest den Versuch das was im Code steht auch auszuführen.
    Woran aber das nun wieder hakt kann ein etwas geübteres Auge vielleicht doch mit dem Blick darauf erkennen, was ich da nun mit sourcerer ins Custum-Modul kopiert habe ({source}{/source} sind natürlich die sourcerer-tags):

    {source}
    <head>
    <title>SIMILE Widgets | Timeline | Examples | Religion Timelines</title>
    <link rel='stylesheet' href='../styles.css' type='text/css' />
    
    <!-- ############################################################################ -->
    <!-- To use this file on your own system, replace ../../api/timeline-api.js with -->
    <!-- http://api.simile-widgets.org/timeline/2.3.1/timeline-api.js -->
    <!-- (where 2.3.1 is the current release number.) -->
    <script src="http://simile.mit.edu/timeline/api/timeline-api.js" type="text/javascript"></script>
    
    <script src="../examples.js" type="text/javascript"></script>
    <script>
    
    var tl;
    function onLoad() {
    var eventSource = new Timeline.DefaultEventSource();
    
    var bandInfos = [
    Timeline.createBandInfo({
    date: "Jan 1 1770 00:00:00 GMT",
    width: "5%",
    intervalUnit: Timeline.DateTime.DECADE,
    intervalPixels: 38
    
    }),
    Timeline.createBandInfo({
    date: "Jan 1 1770 00:00:00 GMT",
    width: "95%",
    intervalUnit: Timeline.DateTime.DECADE,
    eventSource: eventSource,
    intervalPixels: 38
    })
    ];
    
    bandInfos[1].syncWith = 0;
    bandInfos[1].highlight = true;
    
    tl = Timeline.create(document.getElementById("my-timeline"), bandInfos);
    Timeline.loadXML("composer-de2.xml", function(xml, url) { eventSource.loadXML(xml, url); });
    }
    </script>
    </head>
    <body onLoad="onLoad();" onResize="onResize();">
    <div id="my-timeline" class="timeline-default" style="height: 800px"></div>
    
    </body>
        
    ?>
    {/source}




    Sorry aber entweder ich oder die Timeline oder alle beide sind da irgendwie momentan mal wieder schwer von Begriff....
    Vielleicht verhilft aber die Liste meiner vergeblichen Versuche hier ja jemanden aber doch noch zu dem einen oder andere hilfreichen Gedanken.
    Ich bin wie immer dankbar für alles was hilft.
    gruß
    sf-media

    Beitrag zuletzt geändert: 8.1.2015 11:58:32 von sf-media
  5. hallo sf-media,


    die verantwortlichen links werden anscheinend von der datei http://simile.mit.edu/timeline/api/scripts/sources.js zusammengesetzt (ohne target).

    da du keinen schreibzugriff auf diese hast könntest du nun entweder diese herunterladen und auf deinem webspace hochladen und sämtliche einbindungen dieser datei auf deine lokale variante umstellen - so könntest du (wenn man die denn verändern darf) beim zusammensetzten der links das entsprechende target mit entstehen lassen.

    oder du lässt die dateien so wie sie sind und versuchst das target irgendwie nachzuladen, zb in deiner datei http://klassik-resampled.de/timeline/timeline.html in etwa so:
    <script type="text/javascript">
       <!--
       querySelector('.timeline-event-bubble-title a').addEventListener('click', function() {
          top.location.href = this.href;
          return false;
       });
       -->
    </script>

    alternativ könntest du auch einfach das target für alle deine links in deiner datei http://klassik-resampled.de/timeline/timeline.html die keine angabe für target haben auf _top setzen, in etwa so:
    <head>
       <base target="_top">
    </head>



    lg hechma
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!