在JavaScript中更改confirm()的默认标题?

时间:2008-09-04 15:06:01

标签: javascript

是否可以修改在JavaScript中打开confirm()函数的消息框的标题?

我可以创建一个模态弹出框,但我希望尽可能简约。 我想做这样的事情:

confirm("This is the content of the message box", "Modified title");

Internet Explorer中的默认标题是“Windows Internet Explorer”,Firefox中的默认标题是“[JavaScript-program]”。信息量不大。虽然我可以从浏览器安全角度理解你不应该这样做。

9 个答案:

答案 0 :(得分:81)

正如您所说,从安全角度来看,这是不可能的。您可以模拟它的唯一方法是创建一个无模式对话窗口。

您可以使用许多第三方javascript插件来伪造此效果,因此您无需编写所有代码。

答案 1 :(得分:5)

是的,你可以做到!!这有点棘手; )(它几乎适用于ios)

var iframe = document.createElement("IFRAME");
iframe.setAttribute("src", 'data:text/plain,');
document.documentElement.appendChild(iframe);
if(window.frames[0].window.confirm("Are you sure?")){
    // what to do if answer "YES"
}else{
    // what to do if answer "NO"
}

享受它!

答案 2 :(得分:4)

不可能。但是,您可以使用模拟弹出窗口的第三方JavaScript库,它可能看起来更好,并且可以减少干扰。

答案 3 :(得分:3)

你总是可以使用一个隐藏的div并使用javascript来“弹出”div并拥有类似是和否的按钮。很容易做的事情。

答案 4 :(得分:0)

你不能不幸。唯一的方法是使用window.open调用来模拟它。

答案 5 :(得分:0)

不要使用confirm()对话框...从原型/ scriptaculous,YUI,jQuery轻松使用自定义对话框......那里有很多。

答案 6 :(得分:0)

我知道这对于alert()是不可能的,所以我想也不可能确认。原因是安全性:您不允许更改它,因此您不会将自己呈现为某些系统进程或其他内容。

答案 7 :(得分:0)

是的,这是不可能修改它的标题。如果您仍想拥有自己的标题,可以尝试使用其他弹出窗口。

答案 8 :(得分:-3)

您可以编写自己的函数来提供类似的结果。 请参阅此处的newConfim部分: http://www.webreference.com/dhtml/column22/js-vbNewjs.html