我有一个带有iframe的淘汰应用程序。我想在iframe中调用我的淘汰赛中的一个函数。
我在这里看到几个答案,说使用parent.myFunction()应该可以工作,但我猜测如果你没有使用淘汰赛,因为那对我来说并不适合。
以下是一个精简的示例:https://embed.plnkr.co/pCZCv73UpxTLOpClwxdX/
如何让iFrame中的按钮调用与iFrame外部按钮相同的功能?
感谢。
答案 0 :(得分:1)
使用下面的bindIframe
custom binding非常简单。基本上,它会在iframe文档加载后调用ko.applyBindings
。
ko.bindingHandlers.bindIframe = {
init: function(element, valueAccessor) {
function bindIframe() {
try {
var iframeInit = element.contentWindow.initChildFrame,
iframedoc = element.contentDocument.body;
} catch(e) {
// ignored
}
if (iframeInit)
iframeInit(ko, valueAccessor());
else if (iframedoc)
ko.applyBindings(valueAccessor(), iframedoc);
};
bindIframe();
ko.utils.registerEventHandler(element, 'load', bindIframe);
}
};