Ich arbeite derzeit an einer WebExtension und injiziert die HTML meiner WebExtension in einen iFrame. Ich möchte Objekte von beliebigen Webseiten in einen Drop-fähigen Bereich im Iframe ziehen und im Drop-Off-Bereich anzeigen. Ich habe einen dragstartListener, der postMessage verwendet, um das HTML-Dokument des Elements zu senden, das jedes Mal gezogen wird, wenn es auf ein Dragstart-Ereignis hört. PostMessage kann jedoch keine Objekte mit Methoden senden. Gibt es Alternativen, um die Funktion zu implementieren? Vielen Dank!Kann postMessage komplexere Objekte senden
0
A
Antwort
0
Ich habe eine Lösung gefunden: XMLSerializer verwenden.
XML-Serializer kann Dom-Elemente tatsächlich in Strings serialisieren. Postmessage kann Strings sicher zu einem anderen Fenster senden.
Verwandte Themen
- 1. Ermitteln, ob PostMessage Objekte senden kann?
- 2. Senden/Empfangen einer Zeichenfolge durch PostMessage
- 3. Senden einer weiteren postMessage in worker.addEventListener
- 4. Schlüssel ohne SendMessage und PostMessage senden
- 5. Swift komplexere Array Wörterbuch
- 6. ggplot2: Komplexere Facettierung
- 7. Komplexere (reale) Modellbindung?
- 8. Verwenden von PostMessage zum Senden von Unicode-Zeichen
- 9. MFC - Senden von Daten über PostMessage an die GUI
- 10. Crossdomäne postMessage, identifizieren iFrame
- 11. PostMessage (hwnd, WM_SETTEXT, ..) funktioniert nicht während PostMessage (hwnd, WM_QUIT, ..) tut
- 12. Warum sendet PostMessage beim Senden von Kleinbuchstaben mehrere Schlüssel?
- 13. Wie kann ich domainübergreifende PostMessage durchführen?
- 14. Komplexere Beispiele von Nachkommenselektoren verstehen
- 15. C++ Postmessage zu Internet Explorer
- 16. Worker Thread-Problem mit PostMessage()
- 17. postMessage wird im Code
- 18. Kann ich komplexere Formen wie diese in Fabric.js erstellen?
- 19. Opera Mini postmessage
- 20. Parzellierbare Objekte als serialisierbar senden
- 21. Senden von Nachrichten an Objekte
- 22. Core PHP oder Laravel für komplexere Projekte
- 23. Wie komplexere SQL-Abfragen von Controller
- 24. Sicherer Kanal mit PostMessage über IFRAME
- 25. Senden Objekte mit Mockito ausführen
- 26. In PostMessage und MessageChannel stecken
- 27. Fehlgeschlagen ‚postmessage‘ auf ‚DOMWindow‘ auszuführen:
- 28. Wie sende ich eine Zeichenfolge über PostMessage?
- 29. PostMessage() Alternative in Java (Android)
- 30. jwpsrv_position event trigger (überschreibt postMessage)
JSON.stringify/parse ... Also ja, Sie können. Aber das bedeutet, dass Sie eine Funktion nicht einfach weitergeben und auf der anderen Seite aufrufen können. –
Warum implementieren Sie nicht die Funktion auf der Website im Iframe, so können Sie einfach den Inhalt an den Iframe "senden" und dann die Funktion auf der anderen Seite verwenden –
Danke für die Kommentare! Jonas: Ich habe versucht, JSON.stringify/parse zu verwenden, aber ein großer Teil der Objekte wurde nach der Analyse zurück null, da sie Methoden enthalten. @Matthias: Ich versuche, den Inhalt an den Iframe zu senden, aber meine Funktionen benötigen das HTML-Dokument des Elements, und es kann nicht über postMessage gesendet werden. –