1

AJAX を使用してさまざまなページを読み込むサイトがあります。読み込みは正常に機能しますが、ページ内の Jquery が読み込まれると機能しません。ユーザーがナビゲーション ボタンをクリックすると、div 内にページが読み込まれます。最初に HTML タグを使用してページを作成し、ページ内に特定のタグのみをロードしましたが、ロードされたページから html タグと body タグを削除しましたが、まだ機能しません。

ここにHTMLがあります

        <!DOCTYPE HTML>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Santex Group</title>
    <link href="_css/main_15.css" rel="stylesheet" type="text/css">
    <script type="text/javascript" src="http://use.typekit.com/dcn6whd.js"></script>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
    <script type="text/javascript" src="js/jquery.js"></script>
    <script src="js/jquery.scrollTo-min.js" type="text/javascript"></script>
    <script src="js/jquery.localscroll-min.js" type="text/javascript"></script>
    <script src="js/init.js" type="text/javascript"></script>
    <script type="text/javascript" src="js/chili-1.7.pack.js"></script>
    <script type="text/javascript" src="js/jquery.easing.js"></script>
    <script type="text/javascript" src="js/jquery.dimensions.js"></script>
    <script type="text/javascript" src="js/jquery.infinite_carousel.js"></script>
    <script type="text/javascript">// <![CDATA[

        $(document).ready(function()
            {
                $('li#toServices').click(function()
                {
                $('#services').load('services.html #services-container');

                });
                $('ul#siteNav li#toServices').localScroll({
                   target:'body',
                   axis:'x',
                   offset: {left: -140},
                   queue:true //one axis at a time
                });
            }); 

            $(document).ready(function()
            {
                $('li#toHow').click(function()

                {
                $('#how').load('how.html #how-container');

                });
                $('ul#siteNav li#toHow').localScroll({
                   target:'body',
                   axis:'x',
                   offset: {left: -140},
                   queue:true //one axis at a time
                });
            }); 
            $(document).ready(function()
            {
                $('li#toWhy').click(function()

                {
                $('#why').load('why.html #why-container');

                });
                // Scroll the whole document
                $('ul#siteNav li#toWhy').localScroll({
                   target:'body',
                   axis:'x',
                   offset: {left: -140},
                   queue:true //one axis at a time
                });
            }); 
            $(document).ready(function()
            {

            $('li#toClients').live('click', function()

                {
                $('#clients').load('clients.html');
            });
                $('ul#siteNav li#toClients').localScroll({
                   target:'body',
                   axis:'x',
                   offset: {left: -140},
                   queue:true //one axis at a time
                });
            }); 
            $(document).ready(function()
            {
                // Scroll the whole document
                $('ul#siteNav li#toContact').localScroll({
                   target:'body',
                   axis:'x',
                   offset: {left: 0},
                   queue:true //one axis at a time
                });
            }); 
            $(document).ready(function()
            {
                // Scroll the whole document
                $('ul#siteNav li#toCareers').localScroll({
                   target:'body',
                   axis:'x',
                   offset: {left: -150},
                   queue:true //one axis at a time
                });
            }); 
                    $(document).ready(function()
            {
                // Scroll the whole document
                $('ul#siteNav li#toExtra').localScroll({
                   target:'body',
                   axis:'x',
                   offset: {left: -150},
                   queue:true //one axis at a time
                });
            }); 
    // ]]></script>  
    </head>
    <body>
    <header id="mainHeader">
       <div id="mainNav">
        <div id="logo">
        <a title="Home" href="#mainHeader"></a>
        </div>
        <div id="navWrapper">

        <ul id="phone-login">
          <li><a href="#">Call Us Toll Free (888) 622-7098</a></li>
          <li><a href="#">CLIENT LOGIN</a></li>

        </ul>

        <ul id="siteNav">
              <li id="toServices"><a class="star" href="#services">Services</a></li>
              <li id="toHow"><a href="#how">How</a></li>
              <li id="toWhy"><a href="#why">Why</a></li>
              <li id="toClients"><a href="#clients">Clients</a></li>      
              <li id="toContact"><a href="#contact">Contact</a></li> 
              <li id="toCareers"><a href="#careers">Careers</a></li> 

            </ul>
        </div>

      </div>
    <div class="header-writeup">
          <hgroup>
          <h1>Innovate. Create. Experience</h1>
            <h2>We embrace technology to empower people.</h2>
            <h3>We are driven by technology, focused on making better products and interfaces.  We are a full-service Global digital company that emphasized the importance of emerging technoloy solution sfor all types of clients.</h3>
          </hgroup>
       </div>
    </header>

    <div id="wrapper">
      <section id="services" class="scrolling-content">

      </section>
      <section id="how" class="scrolling-content"> </section>
      <section id="why" class="scrolling-content"> </section>
      <section id="clients" class="scrolling-content"> </section>
    <section id="contact" class="scrolling-content">

    </section>
    <section id="careers" class="scrolling-content">
        </section>
    </div>
    <footer id="pageFooter">
    </footer>


    </body>
    </html>

これは、ロード時に機能しないjqueryスクローラーを含む、ロードしようとしているページの1つです

    <div id="clients-container">
        <h1 class="section-heading">Clients</h1>
        <div class="section_container">

                <div class="infiniteCarousel">
                  <div class="wrapper">
                     <ul>
                      <li><img src="_images/clientlogos1.gif" height="146" width="950" alt="Clients and Relationships" /></li>
                       <li><img src="_images/clientlogos2.gif" height="146" width="950" alt="Clients and Relationships" /></li>
                     </ul> 
                  </div>
               </div>

               <div class="view-our-work-link">
                        <a class="button float-left" href="../content/our-work">View Our Work</a>    
               </div>
        </div>
    </div>

ライブサイトは次のとおりです。

http://ernestosillas.com/santexgroupAJAX/index16.html

4

4 に答える 4

1

私は同様の問題を抱えていましたが、これは私にとってはうまくいきました:

  1. スクリプトがサーバー上で実行されていることを確認してください。そうしないと、.load()機能が動作しません

  2. 試してみてください$(document).ready( function()、時々これが問題です

  3. $.getScript関数を介してロードされた外部ページで jQuery を使用する場合は、関数を.load試してください

  4. 最終的return(false)に jQuery スクリプトの最後で関数を使用しないと、スクリプトが Opera、Chrome、および Safari で機能しない可能性があります

  5. ロードしようとしている外部ページから HTML、body、head タグなどを削除します

これが同様の問題を抱えている人に役立つことを願っています。これにより、多くの調査が節約されるはずです。

于 2012-09-30T00:07:07.500 に答える
0

そこに制限されていない場合は、jQuery 1.7.xx をロードして ( http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.jsに 1.3.2 の代わりに 1.7 を書き込むだけです)、使用します。 jQuery.on()バインディングの場合、 live() は非常に遅く非推奨です

于 2012-07-16T19:26:25.307 に答える
0

新しいバージョンのJqueryを使用していることがわかるので、使用する代わりに使用してみてonくださいclick

$('li#toServices').on('body','click',function(){

// your code

});
于 2012-07-16T19:28:00.457 に答える