10

我正在阅读一个名为w3schools的网站,并正在学习 HTML5 课程。在那里,我在 HTML5 中看到了一些在 HTML4 之前被弃用的标签。它的标签之一是<applet>!那么现在小程序没用了吗?

你可以在这里看到它:HTML5 New Elements(at the end) 或者在这里: 在此处输入图像描述

4

4 回答 4

14

Applet(作为用 Java 编写并打算在浏览器中运行的应用程序)在 HTML 规范或草案中不会以任何方式被弃用。由于有许多其他替代方案可用,人们对它们的兴趣正在减少,但这是一个不同的问题。

applet 元素在 HTML 4 中被声明为弃用,支持该object元素。在 HTML 4 中,弃用意味着element 仍然是语言的一部分,建议浏览器支持它(尽管在实践中,并非所有浏览器都支持它,有些浏览器支持它),但建议使用其他东西(在这种情况下,object)而不是它。

在 HTML5 CR 中,不使用“弃用”一词。它使用术语“<a href="http://www.w3.org/TR/html5/obsolete.html#obsolete" rel="nofollow noreferrer">obsolete”,这在原则上意味着完全不同但非常在实践中接近。在 HTML5 CR 中,该applet元素被声明为“完全过时且不符合标准”,并注明“作者不得使用”。然而,HTML5 包含在“实现要求”下的定义。appletHTML5一致性要求规定普通浏览器必须(不仅仅是应该)支持它。

HTML 4 概念“已弃用”和 HTML5 概念“过时”之间为数不多的真正区别之一在于验证:针对 HTML 4 DTD 进行验证时,applet在使用过渡 DTD 时被接受(但在针对严格的 DTD);在 HTML5 验证中,applet报告为错误。

PS W3schools 不应用作任何形式的权威或参考,请参阅http://w3fools.com


2021 年更新- Oracle在 Java 9中正式弃用了 Applet。因此,虽然 W3Schools 在撰写本文时并不完全正确,但他们当时所说的是正确的……现在。

Oracle 弃用 Applet 的主要原因是大多数现代 Web 浏览器已停止支持它们。截至目前,(AFAIK)只有 Internet Explorer 仍支持 Applet,而 IE 将于 2022 年中 EOL。

于 2013-06-10T05:02:48.897 回答
6

它们仍然有用,但请改用object标签。例子:

<object
    width  = "800"
    height = "510"
    data   = "http://math.hawaii.edu/~ralph/Classes/Plotting/fplotter.jar"
    type   = "application/x-java-applet"
>
    <param
        name  = "codebase"
        value = "http://math.hawaii.edu/~ralph/Classes/Plotting/"
    />
    <param
        name  = "code"
        value = "a_fplotter.class"
    />
    <param
        name  = "width"
        value = "800"
    />
    <param
        name  = "height"
        value = "510"
    />
    <param
        name  = "archive"
        value = "fplotter.jar"
     />
</object>
于 2013-06-09T19:40:52.270 回答
4

Applet在 Java 9 中已弃用

Java 9中不推荐使用Applet。Oracle 将停止分发和支持 Java 浏览器插件。

java.applet.Applet课堂上引用:

Applet API 已弃用。有关详细信息,请参阅java.applet 包文档

有关更多信息,请参阅 Oracle 的这篇博文:迁移到无插件 Web

考虑Java Web Start技术。

于 2017-02-28T11:19:41.767 回答
3

不管小程序是不是个好主意

请改用该<object>元素。这就是标准的投诉方式。

object 元素可以表示一个外部资源,根据资源的类型,该资源将被视为图像、嵌套浏览上下文或由插件处理的外部资源。

于 2013-06-09T19:41:54.217 回答