0

我正在为大学做一个项目,并希望在 .xml 格式的 XHTML 页面上使用 Fancybox。

现在的问题是,使用 .html 文件是可行的,但在 .xml 文件中使用几乎相同的代码根本不起作用。表示fancybox的路径是正确的。

这是 .xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
  SYSTEM "about:legacy-compat">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>fancybox testing</title>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script type="text/javascript" src="fancybox/source/jquery.fancybox.js?v=2.1.3"></script>
        <link rel="stylesheet" type="text/css" href="fancybox/source/jquery.fancybox.css?v=2.1.3" media="screen" />

        <script type="text/javascript">
            $(document).ready(function(){
                $(".fancybox").fancybox();
            });
        </script>   
    </head>

    <body>
        <div>
            <a class="fancybox" href="1.png">image</a>
        </div>
    </body>
</html>

.html 文件中的此代码有效。知道为什么吗?我需要.xml中的fancybox:-/

谢谢

4

1 回答 1

1

请注意,XML 与 XHTML 不同。

XML 是可扩展的标记语言(您可以发明自己的标签),而 XHTML 是“完美的”HTML。如果您使用 .XML 扩展名,您的服务器会向您的浏览器发送一组不同的标头(告诉浏览器这是一个 XML 页面,因此浏览器不会将其显示为 HTML 网页),而不是使用 .XHTML 时扩展名(标题告诉您的浏览器它是“超级干净”的 HTML)。

如果您无法更改文件扩展名,则应在请求此文件时更改服务器发送的标头。否则这将不起作用,因为浏览器不知道如何处理 XML。

于 2013-01-04T16:14:16.567 回答