我的模板中有一个iframe,如下所示;
<iframe id="iframeContainer" src="javascript:;"></iframe>
在相应的路线中,我希望动态添加一些表格。我想让它在IE,Firefox和&amp;铬。但是,readyState中的代码根本不会被触发。不确定我是否在正确的位置添加支票?
didTransition: function() {
var self = this;
Ember.run.scheduleOnce('afterRender', this, function() {
document.addEventListener('readystatechange', function() {
if (document.readyState == 'complete') {
var iframeContainer = document.getElementById('iframeContainer');
var innerDoc = (iframeContainer.contentDocument) ? iframeContainer.contentDocument : iframeContainer.contentWindow.document;
innerDoc.body.innerHTML += '<form id="myForm"></form>';
innerDoc.getElementById("myForm").submit();
}
});
})
}
答案 0 :(得分:1)
didTransition: function() {
var self = this;
Ember.run.scheduleOnce('afterRender', this, function() {
if (document.readyState == 'complete') {
var iframeContainer = document.getElementById('iframeContainer');
var innerDoc = (iframeContainer.contentDocument) ? iframeContainer.contentDocument : iframeContainer.contentWindow.document;
innerDoc.body.innerHTML += '<form id="myForm"></form>';
innerDoc.getElementById("myForm").submit();
}
})
}
事件监听器永远不会触发,如果您要使用didTransation,那么当您加入此路线时,将会加以注意。