leodutra
1/22/2015 - 5:06 PM

Check if HTML5 postMessage supports object serialization.

Check if HTML5 postMessage supports object serialization.

var supportsPostObject = false;

(function(win){

	if (window.postMessage) {
	
		var oldIE = false;
		
		var callback = function(e) {
			supportsPostObject = typeof(e.data) !== 'string';
				oldIE ? win.detachEvent('onmessage', callback) : win.removeEventListener('message', callback, false);
				oldIE = callback = null;
		};
		
		(oldIE = win.addEventListener === void 0) ? window.attachEvent('onmessage', callback) : win.addEventListener('message', callback, false);
		
		win.postMessage({}, '*');
	}
})(window);