0

多くのPHP includeステートメントを含むhtmlページがあります。そのうちの 1 つは読み込みに時間がかかります。しかし、残りの要素をそれよりも早くロードしたいが、シーケンスを維持したい

index.php
<div id="a1">
 <?  include('a.php'); ?>
</div>
<div id="b1">
 <?  include('b.php'); ?>
</div>
<div id="c1">
 <?  include('c.php'); ?>
</div>

私は同じシーケンスを維持したい。b.php はロードに時間がかかり、最近ロードされるページ全体に影響します。最初に a.php と c.php をロードしてから、後で b.php をロードしたいと考えています。AJAX を使用して同じことを行うにはどうすればよいですか?

4

5 に答える 5

0
<script type="text/javascript">
  $(function() {
    $('#a1').load( 'a.php', function() {
      $('#c1').load( 'c.php', function() {
        $('#b1').load( 'b.php' );
      });
    });
  });
</script>
于 2013-06-26T07:21:46.073 に答える
0
<? 
$a=false;
$b=false;
$c=false;
?>
<div id="a1">
<? $a = include('a.php'); ?>
</div>
<div id="c1">
<? $c = include('c.php'); ?>
</div>

<? if ( $a && $c) { ?>
<div id="b1">
<? include('b.php'); ?>
</div>
<? } ?>

特定の配置が必要な場合は、JavaScriptを使用します

于 2013-06-26T06:03:47.227 に答える
0

jQuery.load()を使用して、他のページをhtmlページにロードできます

<div id="a1">
<?  include('a.php'); ?>
</div>
<div id="b1">

</div>
<div id="c1">
 <?  include('c.php'); ?>
</div>

 <script type='text/javascript'>
  $(document).ready(function (e) {
        $('#b1').load('/path/to/b.php');
   });
 </script>
于 2013-06-26T04:42:00.057 に答える
0
<script>
    $(function(){
        $('#a1').load('a.php');
        $('#b1').load('b.php');
        $('#c1').load('c.php');
    });
</script>
<div id="a1">
 <?  include('a.php'); ?>
</div>
<div id="b1">
 <?  include('b.php'); ?>
</div>
<div id="c1">
 <?  include('c.php'); ?>
</div>

jquery.js が含まれていない場合は、スクリプトに含めます。の前に

于 2013-06-26T04:44:50.770 に答える