【问题标题】:javascript code not working when language="text/javascript" but working for language='Javascript' [duplicate]当语言=“文本/javascript”但为语言='Javascript'工作时,javascript代码不起作用[重复]
【发布时间】:2014-01-07 20:50:35
【问题描述】:

我的 html 页面中有以下 工作 JavaScript 代码。

   <SCRIPT language='Javascript'>
           function isNumberKey(evt)
          {
             var charCode = (evt.which) ? evt.which : event.keyCode
             if (charCode > 31 && (charCode < 48 || charCode > 57))
                return false;

             return true;
          }         
       </SCRIPT>    

但我听说 language="javascript" 已被弃用,因此尝试使用与以下相同的代码更改 language="text/javascript" 但不起作用。

<SCRIPT language="text/javascript">
      function isNumberKey(evt)
      {
         var charCode = (evt.which) ? evt.which : event.keyCode
         if (charCode > 31 && (charCode < 48 || charCode > 57))
            return false;

         return true;
      }
   </SCRIPT>

谁能告诉我如何使代码在 language="text/javascript" 模式下可用?

【问题讨论】:

  • 您的&lt;script /&gt; 标签(实际上是大多数/所有标签)应该小写。
  • 实际上,你不需要类型或语言,只需要&lt;script&gt;code&lt;/script&gt;,因为javascript是默认的
  • 你可以做&lt;script&gt;。你不需要告诉它它是 JavaScript。

标签: javascript html


【解决方案1】:

更好(因为它更短且更易于阅读):

<script>
    //Some script
</script>

来自spec,重点补充:

type 属性给出了脚本的语言或数据的格式。如果该属性存在,则其值必须是有效的 MIME 类型。不得指定 charset 参数。 如果该属性不存在,则使用默认值,即“text/javascript”。

【讨论】:

  • 为什么更好?请解释一下。
  • @RahilWazir:因为在现代浏览器中,这会起作用。无需担心要添加哪个属性,因为您都不需要:)
  • @RocketHazmat:MIME 类型是什么意思?
【解决方案2】:

通常这是正确的方法:

<script type="text/javascript">
    //Some script
</script>

【讨论】:

    【解决方案3】:

    尝试使用:

    <script type="text/javascript"></script>`
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-06-10
      • 2010-09-13
      • 2018-08-28
      • 2012-11-30
      • 2023-02-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多