1

jqueryを使用してphpファイルを呼び出す簡単な方法を探しています。

最終的な結果は、私が取り組んでいる Magento サイトと関係があります: http://bouquetsco.com/flowersplants.html ^^このページ

このページには商品が表示されます: 3 連続。

    <?php $this->setColumnCount(3); ?>
    <?php $this->setColumnCount(2); ?>

^^この php コードは、製品列の数を手動で設定します。

デフォルトでは、ページは 3 幅で表示されますが、ブラウザー ウィンドウのサイズがタブレットの幅 (760px 程度) に縮小されるまでは問題なく表示されます。ウェブサイトのデザインがタブレットサイズ(760px程度)の場合、商品を2列だけ表示したい。

これを行うには、javascript を使用してウィンドウの幅を決定し、ブラウザ ウィンドウの幅に応じていくつかの php コードを実行する必要があるようです...

これ...

    if ( browser-window-widith > 760) { get '3-column.php' }
    else { get '2-column.php' }

これは非常に単純化されすぎています。このコード ロジックはどのようになりますか? この機能をどのように記述しますか?

また、最初の if ステートメントを次のように変更することもできます。

    if (browser-window-width < 760) { get '2-column.php' }
    else { get '3-column.php' }

====================================

2 つの .php ファイル (2-column.php、および 3-column.php) が存在し、それぞれに以下が含まれます。

    <?php $this->setColumnCount(2); ?>

また

    <?php $this->setColumnCount(3); ?>

このコードは、ブラウザー ウィンドウの幅 (javascript によって検出される) に応じて、1 つまたは別のファイルを呼び出すため、次のようになります。

ディスプレイ > 760px の 3 列の製品リスト

760 ピクセル未満のディスプレイ向けの 2 列の商品リスト

4

2 に答える 2

1

私は自分のサイトのログインページでこれを使用しています:

if(!isset($_GET['width']))
    {
        echo '<script type="text/javascript">window.location = "' . $_SERVER['PHP_SELF'] . '?width="+screen.width+"&height="+screen.height;</script>';
    }
    else
        {
            $_SESSION['screen_width'] = $_GET['width'];
            $_SESSION['screen_height'] = $_GET['height'];
        }

これで、幅と高さが現在のセッションに保存され、ページ分割を表示する前に条件チェックを実行できます。

if($_SESSION['screen_width']>= '1400')
   {
      $this->setColumnCount(3);
   }
   else
       {
          $this->setColumnCount(2);
       }
于 2013-01-03T23:00:52.280 に答える
0

jquery width といくつかの ajax 呼び出しを使用できます。

index.php

<html>
....
<div id="somedivport"></div>
<--! if that script is used the above div will load differently depending on the width-->
</html>

script.js

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>
$(document).ready(function() {
    //or use this$(document).width(); 
    $("#somedivport").load(width>$(window).width()?"/3-column.php":"/2-column.php");
});
</script>

klocを減らすための編集

于 2013-01-03T22:48:37.863 に答える