# 在浏览器中显示文档

> 原文： [https://docs.oracle.com/javase/tutorial/deployment/applet/browser.html](https://docs.oracle.com/javase/tutorial/deployment/applet/browser.html)

Java applet 可以使用 [`java.applet.AppletContext`](https://docs.oracle.com/javase/8/docs/api/java/applet/AppletContext.html) 类中的`showDocument`方法在浏览器窗口中加载网页。

以下是`showDocument`的两种形式：

```
public void showDocument(java.net.URL url)
public void showDocument(java.net.URL url, String targetWindow)

```

`showDocument`的单参数形式只是指示浏览器在指定的 URL 处显示文档，而不指定显示文档的窗口。

`showDocument`的双参数形式允许您指定显示文档的窗口或 HTML 框架。第二个参数可以具有以下值之一：

*   `"_blank"` - 在新的无名窗口中显示文档。
*   `“ _windowName_ ”` - 在名为 _windowName_ 的窗口中显示文档。如有必要，将创建此窗口。
*   `"_self"` - 在包含小程序的窗口和框架中显示文档。
*   `"_parent"` - 在小程序框架的父框架中显示文档。如果 applet 框架没有父框架，则其作用与`"_self"`相同。
*   `"_top"` - 在顶层框架中显示文档。如果 applet 的帧是顶级帧，则其作用与`"_self"`相同。

* * *

**Note:** In this discussion, _frame_ refers not to a Swing `JFrame`, but to an HTML frame within a browser window.

* * *

以下 applet 使您可以尝试两种形式的`showDocument`的每个参数。小程序打开一个窗口，允许您键入 URL 并为`targetWindow`参数选择一个选项。按 Return 键或单击“显示文档”按钮时，小程序将调用`showDocument`。

<noscript>A browser with JavaScript enabled is required for this page to operate properly.</noscript>

* * *

**Note:**  If you don't see the example running, you might need to enable the JavaScript interpreter in your browser so that the Deployment Toolkit script can function properly.

* * *

以下是调用`showDocument`的 applet 代码。这是整个程序， [`ShowDocument`](examples/applet_ShowDocument/src/ShowDocument.java) 。

```
        ...//In an Applet subclass:
        urlWindow = new URLWindow(getAppletContext());
        . . .

class URLWindow extends Frame {
    ...
    public URLWindow(AppletContext appletContext) {
        ...
        this.appletContext = appletContext;
        ...
    }
    ...
    public boolean action(Event event, Object o) {
        ...
            String urlString =
                /* user-entered string */;
            URL url = null;
            try {
                url = new URL(urlString);
            } catch (MalformedURLException e) {
                ...//Inform the user and return...
            }

            if (url != null) {
                if (/* user doesn't want to specify
                           the window */) {
                    appletContext.showDocument(url);
                } else {
                    appletContext.showDocument(url,
                        /* user-specified window */);
                }
            }
        ...

```

[下载 _Show Document_ 示例的源代码](examplesIndex.html#ShowDocument)进行进一步实验。