"DataCloneError: Das Objekt konnte nicht geklont werden." in FireFox 34

Mit Funktion, post-Meldung, aber immer Fehler "DataCloneError: Das Objekt konnte nicht geklont werden." in Zeile "Ziel['postMessage'](Nachricht, target_url.ersetzen( /([^:]+://[^/]+).*/, '$1'));" in FireFox 34, der gleiche code funktioniert auf Chrome und ältere version von FireFox.

var storage = function() {
    return {
           postMessage : function(message, target_url, target) {
           if (!target_url) { 
              return; 
           }
           var target = target || parent;  //default to parent
           if (target['postMessage']) { 
                   //the browser supports window.postMessage, so call it with a targetOrigin
                   //set appropriately, based on the target_url parameter.
                   target['postMessage'](message, target_url.replace( /([^:]+:\/\/[^\/]+).*/, '$1'));
               }               
         }
    }
}();
Was ist die Art von "Botschaft", die versucht, gebucht werden, wenn der Fehler Auftritt? Blob oder Datei vielleicht?
Wenn die message variable übergeben wird enthält DOM-Knoten-Objekte, wie zum Beispiel DocumentFragment Objekt, müssen Sie es konvertieren in eine Zeichenfolge mit der XMLSerializer.prototype.serializeToString Methode, bevor Sie senden. Sie können eine DOMParser Objekt oder die Element.prototype.innerHTML, Element.prototype.insertAdjacentHTML oder Element.prototype.outerHTML Methoden zu unserialize das Objekt auf das andere Ende.

InformationsquelleAutor Krishna | 2014-12-19

Schreibe einen Kommentar