出现后是否可以更改 Javascript 警报中的文本?
例如,是否可以在警报中创建计时器?
┌────────────────────────┐
│ x seconds passed... │
│ <OK> │
└────────────────────────┘
... wherex
将从更改0
为传递的秒值。
我知道我可以使用模式或其他东西,但我想知道是否可以在它出现后更改警报框中的文本。
我想这是不可能的,但最好问问。
出现后是否可以更改 Javascript 警报中的文本?
例如,是否可以在警报中创建计时器?
┌────────────────────────┐
│ x seconds passed... │
│ <OK> │
└────────────────────────┘
... wherex
将从更改0
为传递的秒值。
我知道我可以使用模式或其他东西,但我想知道是否可以在它出现后更改警报框中的文本。
我想这是不可能的,但最好问问。
经过一番初步搜索,似乎不可能做你想做的事。我认为这主要是出于安全原因。
不建议使用警告框,因为(WebPlatform):
- 这是一个同步的方法调用。这意味着,调用此方法会暂停调用此方法的窗口的脚本执行,直到用户关闭显示的对话框。此外,根据您的交叉选项卡/窗口使用情况,这有时会暂停同一域中其他窗口/选项卡的脚本执行。
- 在某些浏览器中调用此方法会阻止用户与整个浏览器或浏览器窗口(及其所有选项卡)进行交互,直到对话框关闭。
- 侵入性对话框通常对用户来说很烦人。
您可以使用以下方法之一创建自己的对话框:
你总是可以有一个警报说:“嘿,看这里,用户,我想告诉你一些事情!” 然后使用上述之一。
另一种选择是使用 JavaScript 创建一个弹出窗口
window.open("http://example.com");
或者
您可以使用showModelDialog
或showModelessDialog
在哪里可以使用dialogArguments
, dialogHeight
, dialogWidth
, dialogLeft
, 和dialogTop
.
但问题是大多数人都有弹出窗口阻止程序,它会阻止你无辜的弹出窗口。
ActiveX 唯一的可能性似乎是Modified Alert Box。我没有对此进行测试,因为我没有 Windows 计算机。
还有nsIPromptService和alert
/或alertCheck
. 这些似乎提供了更多功能,例如添加标题或复选框。还有提示、选择等。
不幸的是,这似乎在 Javascript 中不可用。似乎它仅适用于 Firefox 扩展等(chrome 用户)。
我不这么认为,因为它是浏览器生成的对话框。出于明显的安全原因,我们可能无法访问它
让我们说“不”。甚至没有 API 可以开始这样做,也没有打算这样做。
此外,JS 在 awindow.alert()
或confirm()
. 似乎很直截了当,这在 JavaScript 语言中工作是不可能的。
使用 jQuery 模式或其他。
无法自定义警报。您可以从 YUI 尝试简单模式对话框。您可以按照自己的方式自定义它。还有其他可用的第 3 方组件,或者您可以自己制作。
显示后无法修改。如果您不惜一切代价想要这个,请使用自定义警报框解决方案。
您可以设置一个看起来像浏览器警报的模式框,并根据需要对其进行操作。像警报框这样的浏览器组件是不可定制的。