Antworten auf deine Fragen:
Neues Thema erstellen

Frameset-Eventhandler

Hi,

ich muss in ein bestehendes System eingreifen und auf mehreren Elementen innerhalb eines frames (sprich innerhalb eines frames in einem framset) einen Eventhandler platzieren.
In meinem Beispiel möchte ich in dem Frame mit dem Namen "right" (kein iframe!!!) allen span-Elementen ein Klick-Event zuweisen.
Code:
<script src="src/js/jquery.js" type="text/JavaScript"></script>
<script type="text/javascript">
    $(document).ready(function(e) {
        var frame = window.frames["right"].document.getElementsByTagName("span");
        $(document).on('click', frame, function(){
            console.log("logged jquery");    
        });
        frame.addEventListener('click', function(){
            console.log("clicked");
        });
    });
</script>
Ich habe beide mir bekannten Möglichkeiten (jQuery u. pures JavaScript) probiert doch bin zu keinem positiven Ergebnis gekommen. Kann mir jemand helfen?
Ich möchte noch etwas fragen:
title="ID:1"
Wenn ich alle span-Elemente deren Titel-Attribut mit "ID:" beginnt auslesen möchte, wie würde das geänderte Beispiel aussehen?

// Edit: Ich weiß, Framsets sind außer Mode, aber ein "alter Hase" könnte das ja vielleicht noch wissen? :)
 
Zuletzt bearbeitet:

Duddle

Posting-Frequenz: 14µHz

AW: Frameset-Eventhandler

Soll die Zuweisung live bleiben? Für das statische Beispiel funktioniert das recht straightforward:
Code:
var spans = $("span", window.frames["right"].document);
spans.on("click", function() {
	alert("click");
});

Wenn ich alle span-Elemente deren Titel-Attribut mit "ID:" beginnt auslesen möchte, wie würde das geänderte Beispiel aussehen?
http://api.jquery.com/attribute-starts-with-selector/


Duddle
 
AW: Frameset-Eventhandler

Code:
var spans = $("span", window.frames["right"].document);
spans.on("click", function() {
    alert("click");
});

Hi,
danke für die Antwort. Die Variable "spans" ist zwar bei mir ein Object, doch der Eventhandler wird nie angesprochen.

Ja, es muss on() verwendet werden, weil diese Events auch in allen Dateien funktionieren sollen, die neu im Frameset geladen wurden.

Danke, der Selector ist hilfreich!

// EDIT: Zu überprüfen, ob der Frame auch wirklich geladen wurde hat geholfen. Sprich mit .load()
 
Zuletzt bearbeitet:
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben