JSFiddle - React, Tailwind, and code Playground
HTML
<textarea id="inpt" cols="30" rows="10"></textarea>
<div><input type="submit" value="append" id="btn" style="width:60px;height:20px;background:grey"></div><br>
<iframe id="fr" name="fr" style="width:300px;height:300px;"></iframe>
<script type="text/javascript">
document.getElementById('inpt').innerHTML = "document.write('awesome')";
if (typeof addEventListener !== "undefined") {
addEvent = function (obj, evt, fn) {
obj.addEventListener(evt, fn, false);
};
removeEvent = function (obj, evt, fn) {
obj.removeEventListener(evt, fn, false);
};
} else if (typeof attachEvent !== "undefined") {
addEvent = function (obj, evt, fn) {
var fnHash = "e_" + evt + fn;
obj[fnHash] = function () {
var type = event.type,
relatedTarget = null;
if (type === "mouseover" || type === "mouseout") {
relatedTarget = (type === "mouseover") ? event.fromElement : event.toElement;
}
fn.call(obj, {
target: event.srcElement,
type: type,
relatedTarget: relatedTarget,
_event: event,
preventDefault: function () {
this._event.returnValue = false;
},
stopPropagation: function () {
this._event.cancelBubble = true;
}
});
};
obj.attachEvent("on" + evt, obj[fnHash]);
};
}
var _script = document.createElement('script');
_script.type = 'text/javascript';
var iFrame = document.getElementById('fr'),
iFrameBody,
t = document.getElementById("inpt"),
btn = document.getElementById('btn');
function injectJS(content, val) {
removeJS();
var windowVal;
if (iFrame.contentDocument) {
windowVal = iFrame.contentDocument;
iFrameBody = iFrame.contentDocument.getElementsByTagName('body')[0];
} else if (iFrame.contentWindow) {
windowVal =...