javascript - XHTML 中的 JavadScripting 最新更新

标签 javascript xhtml

所以我有这个 XHTML 文档,我在 <head> 之间嵌入了这个脚本标签:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--Created January 12, 2016-->
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <!--Date updated, courtesy of -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script>
     function makeArray() {
              for (i = 0; i < makeArray.arguments.length; i++)
                this[i] = makeArray.arguments[i];
            }

            function getFullYear(d) {
              var y = d.getYear();
              if (y < 1000) {
                y += 1900
              };
              return y;
            }

            var days = new makeArray("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
            var months = new makeArray("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");

            function format_time(t) {
                var Day = t.getDay();
                var Date = t.getDate();
                var Month = t.getMonth();
                var Year = getFullYear(t);
                timeString = "";
                timeString += days[Day];
                timeString += ", ";
                timeString += months[Month];
                timeString += " ";
                timeString += Date;
                timeString += ", ";
                timeString += Year;
                return timeString;
              }

            m = new Date(document.lastModified);
            d = new Date();
            $(function() {
              $('.timestamp').html(format_time(m))
            });
    </script>

</head>

更新页脚中文档上次更新的日期:

<div id="copyright">
    <p id="copyright-invert">
        Copyright &#169;
    <!-- function for year change  -->
        <script type="text/javascript">
            now=new Date();
            year=now.getFullYear(); 
        </script> 
        <script type="text/javascript">
            document.write(year);
        </script>
        | All Rights Reserved
        <br/>
          UPDATED: <span class="timestamp"></span>
    </p>
</div>
</body>
</html>

这里的问题是当我将文档通过 validator 时,它会出现一些错误和警告,如下所示: enter image description here

我不确定如何纠正此问题以便文档可以通过验证。 。 .

最佳答案

就验证而言,处理此问题的最佳方法是不使用 XHTML

  • 在 99% 以上的情况下,XHTML 带来的麻烦比它带来的值(value)更大(因为大多数尝试使用 XHTML 的人都会告诉浏览器它是 HTML,因此必须编写它以便它可以与 XML 和 HTML 解析器一起使用)。
  • 过渡性 Doctype 旨在帮助人们在 CSS 支持较差的情况下轻松使用 CSS。那是在90年代。很长一段时间以来,CSS 支持一直很差。
  • 当前标准是 HTML 5。浏览器对它的支持比 XHTML 1.0 更好。您几乎肯定应该使用它(而不是它的 XHTML 序列化)。
<小时/>

如果您真的非常想使用 XHTML,那么请阅读:

也就是说,让脚本在 XHTML 中有效的最佳方法是将它们放入外部 JS 文件

如果失败,请用注释和 CDATA 标记包裹脚本元素的内部:

   <script>//<![CDATA[
   ...
   //]]></script>

关于javascript - XHTML 中的 JavadScripting 最新更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36073313/

相关文章:

css - 单行(一个或两个单词)溢出到 div 之外

javascript - 打开打印预览时,Chrome 浏览器无法调用服务器

javascript - 是否可以从vanilla javascript导入和使用react-redux组件

c# - 简单的 JavaScript 问题,在 IE 中返回 NULL,但在 FireFox 中工作!

html - 五月天 : CSS fonts look horrible different in IE compared to Chrome/Firefox after update

html - 将 facebook 提要嵌入到 html 中

javascript - Reactjs 的bundle.js 中 Uncaught Error

javascript - BST 中的计数节点通过 Javascript 伪经典地实现了 countNodes,无需内部子例程

javascript - Chartjs,使用 For-Loop 进行分散

javascript - 如何动态创建多个 ul 列表?