Html “与”的区别是什么;“朗”;及;“类型”;脚本标记中的属性?

Html “与”的区别是什么;“朗”;及;“类型”;脚本标记中的属性?,html,scripting,Html,Scripting,对于HTML标记,lang=Javascript和type=text/Javascript之间的技术区别是什么 我通常两者都使用,因为我一直认为较旧的浏览器需要一个或另一个。类型更一般,指的是脚本块的mime编码。据我所知,你只需要一个,通常块将没有任何类型或滞后属性工作 我倾向于使用类型。语言是旧属性,类型是新属性。您必须使用一个过渡(不是正面的,但相当肯定)doctype才能合法地使用这两个属性。lang是脚本的语言,type是脚本标记内容的MIME类型。可以用于服务VBScript和不同版

对于
HTML标记,
lang=Javascript
type=text/Javascript
之间的技术区别是什么


我通常两者都使用,因为我一直认为较旧的浏览器需要一个或另一个。

类型更一般,指的是脚本块的mime编码。据我所知,你只需要一个,通常块将没有任何类型或滞后属性工作


我倾向于使用类型。

语言是旧属性,类型是新属性。您必须使用一个过渡(不是正面的,但相当肯定)doctype才能合法地使用这两个属性。

lang是脚本的语言,type是脚本标记内容的MIME类型。

可以用于服务VBScript和不同版本的Javascript

除非您需要特定版本的Javascript,否则不要使用language属性,没有它,您的代码仍然可以正常工作

即使代码的某些部分确实需要特定的Javascript版本,也可以通过(typeof window.blah.feature!=“undefined”)检查来测试该功能是否存在

下面是language属性用法的示例:

由于这种定义松散或不确定的行为,language属性已被弃用

type属性完全不同。它告诉浏览器脚本是什么mime类型,并且应始终在脚本标记中指定。

根据:

类型: 此属性指定元素内容的脚本语言,并覆盖默认脚本语言。脚本语言被指定为内容类型(例如,“text/javascript”)。作者必须为此属性提供一个值。此属性没有默认值

语言:已弃用。此属性指定此元素内容的脚本语言。它的值是该语言的标识符,但由于这些标识符不是标准的,因此该属性已被弃用,而改用类型


基本上,这两个属性都不是必需的。使用它们的唯一原因是验证,而这在中已变得无效。

OP明确表示“lang”而不是“language”。更老的“语言”标签应该是Javascript或VBScript

但当前的、看似有效的“lang”标记实际上是哪种书面语言,如英语、西班牙语、日语。微软的Visual Studio为“lang”的值提供了一个下拉列表,它们都像en-us、fr、ja等。。英语、美国、法语、日语等


我认为如果你有一个复杂的多语言设置,那么使用这个标签可能有正当的理由——也许有一个内容管理系统可以支持它,然后提供适当的javascript文件——比如jQuery控制资源

请注意,HTML5中不再需要
type
。如果缺少,则默认值为
text/javascript
。那应该是正确的答案。language和lang是不同的属性。我最近了解到,建议使用lang来定义书面语言(英语、西班牙语等),以便于像屏幕阅读器这样的可访问性。