BOM 常见对话框用法

时间:2024-06-08 07:10:03

当涉及到 BOM(浏览器对象模型)中的对话框时,我们可以使用以下方法来与用户进行交互。

  1. alert() 对话框: 这个对话框用于向用户显示一个简单的提示信息,并等待用户点击确定按钮后关闭对话框。

    alert("Hello World!");
    

  2. confirm() 对话框: 这个对话框用于向用户显示一个带有确定和取消按钮的对话框,并等待用户点击其中一个按钮来确定或取消操作。根据用户的选择,confirm() 方法返回一个布尔值(true 或 false)。

    if (confirm("Are you sure?")) {
      // 用户点击了确定按钮
    } else {
      // 用户点击了取消按钮
    }
    

  3. prompt() 对话框: 这个对话框用于向用户显示一个带有输入框的对话框,用户可以在输入框中输入文本,并等待用户点击确定或取消按钮。根据用户的选择,prompt() 方法返回用户输入的文本或一个 null 值。

    var name = prompt("Please enter your name:");
    if (name != null && name != "") {
      // 用户点击了确定按钮,并且输入了内容
    }
    

以上方法均会阻止后续的代码执行,直到用户对对话框进行操作。因此,在使用这些对话框时,需要注意代码的执行顺序。

下面是一个简单的示例,演示了如何使用这些对话框:

function showConfirmation() {
   if (confirm("Are you sure?")) {
     alert("You clicked OK.");
   } else {
     alert("You clicked Cancel.");
   }
}

function showPrompt() {
   var name = prompt("Please enter your name:");
   if (name != null && name !== "") {
     alert("Hello, " + name + "!");
   } else {
     alert("You didn't enter your name.");
   }
}

在上述示例中,当用户点击确认按钮时,会显示一个带有 "You clicked OK." 的提示框。当用户点击取消按钮时,会显示一个带有 "You clicked Cancel." 的提示框。而对于 prompt() 对话框,如果用户输入了内容并点击确认按钮,则会显示一个带有 "Hello, [输入的名字]!" 的提示框。如果用户点击取消按钮或者未输入任何内容,则会显示一个带有 "You didn't enter your name." 的提示框。

这些对话框提供了一种简单的方式来与用户进行交互,但请注意不要滥用对话框,以免干扰用户体验。