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 拡張子を使用すると、.XHTML を使用する場合とは異なるヘッダー セットがサーバーからブラウザーに送信されます (ブラウザーに XML ページであることを伝えるため、ブラウザーはこれを HTML Web ページとして表示しません)。拡張子 (ブラウザーに「スーパークリーン」な HTML であることを伝えるヘッダー)。

ファイル拡張子を変更できない場合は、このファイルが要求されたときにサーバーから送信されるヘッダーを変更する必要があります。そうしないと、ブラウザーは XML をどう処理するかを認識できないため、これは機能しません。

于 2013-01-04T16:14:16.567 に答える