前端开发手册:JavaScript对话框-JavaScript Dialogs
来源:网络分享
编辑:引流技巧
时间:2025-05-14

摘要:JavaScript引擎提供了三种类型的对话框:报警、确认和提示。当JavaScript引擎需要显示其中一个对话框时,会调用DialogHandler的相应方法:。调用window.alert() JavaScript函数时会发生这种情况。在确认对话框关闭之前,JavaScript执行将被阻止。要向JavaScript返回新的提示文本,可以使用prompt dialog params . setprompttext方法。默认情况下,JxBrowser不显示JavaScript对话框,使用静默模式,在这种模式下,所有对话框都会自动关闭,当用户单击对话框上的“取消”按钮时,会模拟该行为。要显示JavaScript对话框,您可以注册自己的DialogHandler实现,它会显示适当的UI对话框。
JavaScript引擎提供三种类型的对话框:警报,确认和提示。当JavaScript引擎需要显示其中一个对话框时,会调用DialogHandler的相应方法:
- 该DialogHandler.onAlert()时,应显示JavaScript警告对话框方法被调用。它发生在调用window.alert() JavaScript函数时。该对话框显示文本消息和“确定”按钮。在关闭“警报”对话框之前,将阻止JavaScript执行。
- 该DialogHandler.onConfirmation()时,应显示的JavaScript确认对话框方法被调用。它发生在调用window.confirm() JavaScript函数时。该对话框显示文本消息,“确定”和“取消”按钮。如果用户单击“确定”,则该框返回true。如果用户单击“取消”,则该框返回false。在“确认”对话框关闭之前,将阻止JavaScript执行。
- 所述DialogHandler.onPrompt()时应当显示的JavaScript提示对话框方法被调用。它发生在调用window.prompt() JavaScript函数时。该对话框显示一个文本输入字段,用户可以在其中输入一些文本,“确定”和“取消”按钮。要将新的提示文本提供回JavaScript,可以使用PromptDialogParams.setPromptText(String)方法。如果用户单击“确定”,则该框返回输入值。如果用户单击“取消”,则该框返回null。在关闭“提示”对话框之前,将阻止JavaScript执行。
默认情况下,JxBrowser不显示JavaScript对话框并使用静默模式,其中所有对话框都自动关闭,当用户单击对话框上的“ 取消”按钮时,模拟行为。
要显示JavaScript对话框,您可以注册自己的DialogHandler实现,该实现显示适当的UI对话框。例如,以下代码演示了如何注册使用Java Swing API显示Alert对话框的自定义DialogHandler实现,并取消确认和提示对话框:
browser.setDialogHandler(new DialogHandler() { @Override public void onAlert(DialogParams params) { String url = params.getURL(); String title = "The page at " + url + " says:"; String message = params.getMessage(); JOptionPane.showMessageDialog(null, message, title, JOptionPane.PLAIN_MESSAGE); } @Override public CloseStatus onConfirmation(DialogParams params) { return CloseStatus.CANCEL; } @Override public CloseStatus onPrompt(PromptDialogParams params) { return CloseStatus.CANCEL; } ... });或者您可以注册 已实现的JxBrowser的 DialogHandler 实现并显示UI对话框:
Swing
JavaFX
import com.teamdev.jxbrowser.chromium.Browser; import com.teamdev.jxbrowser.chromium.javafx.BrowserView; import com.teamdev.jxbrowser.chromium.javafx.DefaultDialogHandler; Browser browser = new Browser(); BrowserView browserView = new BrowserView(browser); browser.setDialogHandler(new DefaultDialogHandler(browserView));

相关文章:
相关推荐:
栏目分类

最新文章

热门文章
