我正在写一个 javascript 函数, 动态地用按钮创建一个 Iframe 按钮, 如果按下按钮, 可以删除它的 iframe 。
这些是我的笔记本功能:
function createIframe (iframeName, width, height) {
var iframe;
if (document.createElement && (iframe = document.createElement( iframe ))) {
iframe.name = iframe.id = iframeName;
iframe.width = width;
iframe.height = height;
var connectIP = document.getElementById("ip").value;
var connectPORT = document.getElementById("port").value;
iframe.src = "http://"+connectIP+":"+connectPORT;
document.body.appendChild(iframe);
addElement(iframe.name);
}
return iframe;
}
function removeIframe(iframeName) {
iframe = document.getElementById(iframeName);
if (iframe) {
var x=iframe.parentNode.removeChild(iframe)
}
}
function addElement(iframeName) {
var butt = document.createElement( button );
var butt_text = document.createTextNode( Remove );
butt.appendChild(butt_text);
butt.onclick = removeIframe(iframeName);
document.body.appendChild(butt);
}
问题是,当按钮创建时,即刻执行点击函数,而不只是当用户按下它时,而是立即执行,所以我的新IFrame立即被删除,我看不到它。
我怎样才能解决这个问题?
此外,能否将按钮不添加在母体中,而是直接添加到新创建的框架中?
提前感谢。