1

id ="container"のあるページのdivから別のhtmlページid="landing"のdivにコンテンツをロードするために、いくつかのオプションを試しました。

私はここで答えを使用し、それの多くのバリエーションも 別のページにdivのコンテンツをロードします

テストを実行しましたが、Jqueryが読み込まれています。

テストファイルはこちらhttp://www.salcombeyurts.co.uk/test/landing.html

私のコードは次のようになります:

<script type="text/javascript">
$('#landing').load('source.html #container');
</script>

これは最終的にPHPページになります。Joomlaサイトの一部。

4

3 に答える 3

1

#landingdiv が定義される前にスクリプトを実行します。

DOM Ready イベントの後にコードを実行する

$(function(){
    $('#landing').load('source.html #container');
});
于 2012-11-06T16:52:59.147 に答える
1

あなたが得た提案は、AJAX リクエストを実行し、ページ全体を現在のページの #container div にロードすることだったようですが、これは悪い考えではありません。一方、あなたがやろうとしているように見えるのは、ページをロードしてから、そのページ内の div のコンテンツを取得し、それを現在のページのコンテナ div に配置することです。これは非常に複雑で、悪い解決策です何が問題なのか。

ここに私の解決策があります

$(function() {
    $.get('page with the div you want', function(data) {
        var content = $(data); //turn the page into a jquery object
        var div = content.find('#div'); // this is the div you want the content from
        $('#container').html(div.html()); // this will set the content of the current div
    });
});
于 2012-11-06T16:55:58.397 に答える
0

あなたのスクリプトをページの一番下に移動して、そのように置き換えます。

オリジナル:

<script type="text/javascript">
    $('#landing').load('source.html #container');
</script>

新しい:

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

    $('#landing').load('source.html #container');
});
</script>

source.htmlとの間のスペースの削除に注意してください#container.

于 2012-11-06T16:53:31.263 に答える