0

私のウェブサイトは動的であるため、ある意味ではウェブサイトは 1 つのページにすぎませんが、その 1 つのページ (ホームページ) は、押されたリンク、URL の変更などに応じて異なるコンテンツを読み込みます。ナビゲーション バーには、さまざまなリンクがあります。 、ブログ、ポートフォリオ、履歴書、連絡先。ブログをクリックすると、(1)blog.htmlコードをbodyホームページにロードし、(2) Feedburner によってブログの RSS をロードする外部 JavaScript コードを実行します。

私はもう試した:

  • $.getScript(...);
  • scriptタグを動的に作成する
  • $(window).ready(...);

注:タグがどこにあっても、外部コードが表示される場所であるため、scriptタグをホームページのタグに配置することはできません ( .headscript<div class='content' id='blog-page'>

ホームページ:

<html>
   ...
   <body>   
      <div id="content"></div> <!-- Dynamic div -->

      <script>
         <!-- updateContent is called when URL changes, page loads, etc... -->
         function updateContent(page) {
            $('div#content').load('../../' + page + '.html');
         };
      </script>
   </body>  
</html>

動的コンテンツ (ホームページに取り込まれる):

<div class='content' id='blog-page'>
   <script src="http://feeds.feedburner.com/blogspot/bVDtI?format=sigpro" type="text/javascript"></script>
...
</div>

何か案は????私は完全に途方に暮れています...

答えを見つけました。

4

1 に答える 1

3

そのスクリプトは document.write を使用し、出力が必要な場所に配置する必要があります..

このようにブログのRSS / Atomを動的に読み取るには、Google Feed APIを使用することをお勧めします

http://jsbin.com/UyoYOvO/1/

<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
<script>

    $(document).ready(function(){
        // Data object: RSS feed URL, number of entries to return, result format, API version
        var data = {
            q: 'http://feeds.bbci.co.uk/news/video_and_audio/news_front_page/rss.xml'
            , num: 10
            , output: 'json'
            , v: '1.0'
        };

        // AJAX call to Google Feed API which converts ATOM/RSS feed to JSON
       $.ajax({
            url:'http://ajax.googleapis.com/ajax/services/feed/load'
            ,type : "GET"
            ,dataType : "jsonp"
            ,data: data
            ,success: function (json) {
                var feed = json.responseData.feed;
                if(!feed) return;
                var entries = feed.entries;
                if(!entries) return;

                var html = '';
                for( var i=0; i<entries.length; i++){
                    html += '<h2><a href="'+ entries[i].link +'">'+ entries[i].title +'</a></h2>' +
                          '<p>'+ entries[i].contentSnippet +'</p>';
                };

                $('#output').html( html);
            }
      });
  })
</script>
</head>
<body>

    <div id="output"></div>

</body>
</html>
于 2013-09-03T05:32:22.533 に答える