Dar*_*man 5 html javascript iframe jquery nw.js
我有一个带有 , 的页面<iframe>,其中<iframe>另一个页面<iframe>作为窗口弹出。我想做的是调用在 中设置的函数<iframe>...<iframe>我知道,有很多相同的标签。
这就是我所说的 HTML 格式。
<body>
<iframe src="blahblah.html" name="iframe">
//blahblah.html html
<iframe src="blahblahpopup.html" name="iFrame2">
//blahblahpopup.html html, also where the function is set.
</iframe>
</iframe>
</body>
Run Code Online (Sandbox Code Playgroud)
因此,如您所见,<iframe>an 中有一个<iframe>。
现在让我们开始谈正事吧。我正在使用此 JS 代码将我的 JS 上下文置于<iframe>名为“iframe”的第一级
window.frames['iframe'].showAssetPicker();
Run Code Online (Sandbox Code Playgroud)
它的作用是调用第一层中的弹出窗口<iframe>。但现在我需要调用刚刚调用的弹出窗口内的函数。(这是另一个<iframe>......我不是所有这些的原因<iframe>......)
所以这是我调用第二级中定义的函数的失败尝试<iframe>......
window.frames['iframe'].frames['iFrame2'].populateTypePullDown('/getdata/');
Run Code Online (Sandbox Code Playgroud)
我也尝试过
window.frames['iframe'].window.frames['iFrame2'].populateTypePullDown('/getdata/');
Run Code Online (Sandbox Code Playgroud)
两者似乎都不起作用。有什么帮助吗?我正在使用 node-webkit 来删除<iframe>安全限制。
感谢您为我提供的任何帮助!
PS 天哪,我<iframe>在这篇文章中说了太多次了。
问题可能是您在加载资源选择器之前没有等待,因此该函数populateTypePullDown尚未定义。
尝试这样的事情:
$('#iframe')
.ready(function() {
var $innerIframe = $(this).contents().find('#iFrame2');
console.log($innerIframe, 'ready');
$innerIframe.get(0).contentWindow.populateTypePullDown('/vsg/ipm/SecuredOfferRepository');
})
.get(0).contentWindow.showAssetPicker();
Run Code Online (Sandbox Code Playgroud)