2

自分のWebページに別のWebページを含めたい。私はそれを行う方法を知っています。

<html>
<head>
<br>
<some links to external scripts...><br>
<br>
</head><br>
<body onload='$("#divkat").load("page1.php");'><br>
<div><br>
<br>
<br>
<div class="sidebar"><br>
              <h3>category :</h3><br>
         <a onclick='$("#divkat").load("page1.php");'>page1</a><br>
         <a onclick='$("#divkat").load("page2.php");'>page2</a><br>
         <a onclick='$("#divkat").load("page3.php");'>page3</a><br>
             <a onclick='$("#divkat").load("page2.php");'>page4</a><br>
           </div><br>
<br>
<br>
<div id="divkat"><br>< /div><br>
<  ! - - < ?php include( 'page1.php' ); ?>    - - ><br>
             < /div><br>
            < /div>
<br>
<br>
<br>
</body><br>
</html>

正常に動作しています。

問題は、「page1.php」にいくつかのシャドウボックス(ライトボックス)が含まれていることです。このような :

 <br>
< /div><br>
< div style="height:180px;width:180px;float:left;margin-top:15px;margin-left:15px;"><br>
< a href="img/panorama-split.jpg" rel="shadowbox; height=500; width=960"><br>< img src="img/tumb-kastel.jpg" alt="Klematis" width="180" height="180" />< /a><br>
< div>

メインページはJSを実行しません。「pag1.php」を開くと、正常に動作します。

カテゴリをクリックするとWebギャラリー(カテゴリを含むメインページ)を作成したいのですが、php関数にはシャドウボックスで開くアイテムを含むページが含まれています。1つの解決策は、カテゴリとして多くのページを用意することですが、ピラティカルではありません。新しいカテゴリを追加するには、それらすべてを編集する必要があります。いつか、リンクやサムネイルを使って新しいカテゴリ、写真、その他のメディアを簡単に追加できるように、管理インターフェイスをプログラムする予定です。削除してバックアップする可能性があります。

ありがとうございました

4

1 に答える 1

1

ここでの問題の 1 つは、HTML コメントを使用していることです。

<  ! - -

これは、PHP が HTML をインクルードするpage1.phpと、実際にはコメント アウトされることを意味します。ただ試してみてください:

< ?php include( 'page1.php' ); ?><br/>

その代わり。

残りについては、明確にすることができるかもしれません。Page1.phpJSが含まれていないので、直接開いたときにJSを通常どおり実行するにはどうすればよいですか? 正常に機能しないことを説明できますか?

編集

質問の中で体について言及しているように感じますonLoad。もしそうなら、JQuery が直接 HTML に入れられると、少し奇妙であることが常にわかりました。head代わりに、これをタグに入れて、DOM 自体がロードされた後に JQuery を試して実行することができます。

<script type="text/javascript">
    $(function(){
        $("#divkat").load("page1.php");
    });
</script>

body タグを次のように置き換えます。

<body>

また、ハイパーリンクについては、関数を使用して JQuery イベントを使用して調べることができますon(): http://api.jquery.com/on/

于 2012-09-26T07:54:13.593 に答える