Permalink
Browse files

Addresses externalinterface issues in some IE flash player versions. …

…Fix #2529891
  • Loading branch information...
1 parent 2929ce0 commit d8d50390f646a717c7e9a52ce551b548321380a9 @tripp committed Apr 9, 2012
Showing with 2 additions and 2 deletions.
  1. +2 −2 src/swf/js/swf.js
View
@@ -104,8 +104,8 @@ function SWF (p_oElement /*:String*/, swfURL /*:String*/, p_oAttributes /*:Objec
}
objstring += "</object>";
- oElement.setContent(objstring);
-
+ oElement._node.innerHTML = objstring;
+
this._swf = Node.one("#" + _id);
} else {
/**

5 comments on commit d8d5039

oElement.set('innerHTML', objstring)

Is that Hungarian notation?

Have you traced the issue through Node.setContent to the DOM methods used?

Is it possible that DOM.createHTML is behaving badly for <object>s?
Or that the markup string generated has a typo, resulting in unpredictable browser behavior?

Owner

tripp replied Apr 9, 2012

It seems to be less of a createHTML behaving badly and more of an IE/FlashPlayer behaving badly. I run into the same issues, if I construct the object and its children using document.createElement and appendChild.

Owner

tripp replied Apr 9, 2012

Sorry Luke, I missed seeing your first comment. You're right: oElement.set("innerHTML", objstring) would be better.
Yes, I did trace through the node.setContent. It seems the node is created using innerHTML on a dummy div and then that node is append to the dom. For some reason which I have not figured out yet, only adding the dom string with innerHTML seems to work as it should.

Ok, add a comment detailing why set('innerHTML'...) is used instead of setHTML (formerly setContent) and this LGTM.

Please sign in to comment.