所以我创建了一个带有iframe的simplemodal框。在iframe中我有一个文本框,一旦提交就会调用一个函数。然后该功能关闭并执行自己的命令。我想要做的是在人们提交他们的文本以便关闭simplemodal框之后。我还没有看到一个允许我为模态设置id的属性,所以我可以在函数外部引用它。这是我的代码:
模态:
$.modal('<iframe src="chrome-extension://kdcfmjjkjcgaklpmpnhcmieepkiddfen/options.min.html" height="120" width="300" style="border:0">', {
close: true,
closeHTML:"",
containerCss:{
backgroundColor:"#000",
borderColor:"#000",
height:100,
padding:0,
width:300,
height:125
},
overlayClose:true,
opacity:50,
overlayCss: {backgroundColor:"#000"}
});
options.min.html:
passMessage:
function passMessage() {
var value = document.getElementById('speechInput').value;
var event = "commands"
$.modal.close();
chrome.extension.sendRequest({command:value}, function(response) {});
}
你可以看到模态使用options.min.html在模态中创建一个语音输入框。一旦用户停止说话,则调用另一个函数,其中从该框中获取值。但是$ .modal.close();函数实际上并没有关闭模态,而只是挂起我的程序,它无处可去。我需要知道如何引用在别处创建的模态。
感谢您的帮助
答案 0 :(得分:0)
如果要从iframe中关闭模式,请使用以下JavaScript:
parent.$.modal.close();
对于ID,SimpleModal会自动将它们添加到对话框元素:simplemodal-overlay
,simplemodal-container
和simplemodal-data