0

私が取り組んでいるプロジェクトは、コンテンツを表示するグリッドで構成されています。グリッド上の各アイテムのサイズをビューポートのサイズの 4 分の 1 に変更したいと考えています。これは Javascript を使えば非常に簡単ですが、各項目のサイズを認識する必要があるバックエンド要素がいくつかあります。

Timthumb を使用してアイテムの画像を適切なサイズにリサイズしているため、ビューポートの幅を検出し、適切な値 (ビューポートの幅 / 4) を各アイテムを提供する php に送信する必要があるため、Timthumb に使用に適したサイズ。

この問題に対する最善のアプローチは何でしょうか?

4

2 に答える 2

3

$(document).readyでページをリクエストするときに、jQueryを使用してビューポートのサイズを検出し、それをAJAXリクエストで渡すのはどうですか?

$(document).ready(function () {
    var height = $(window).height();
    var width = $(window).width();
    $.ajax({
        type: 'POST',
        url: image.php,
        data: {
            "height": height,
            "width": width
        },
        success: function (data) {
            $("#viewarea").html(data);
        },
    });
});

PHP側では、それを取得してデータを返すことができます

$_POST['height']
$_POST['width']
于 2011-07-28T16:31:07.667 に答える
1

画像を生成する PHP スクリプトへの単純な AJAX/JQuery リクエストは、ここで機能するでしょうか?

何かのようなもの:

var query_string = "x=<viewport-x>&y=<viewport-y>";
$('#viewport').html("Processing...");
$('#viewport').load('resize_image.php',query_string);

そうすれば、正しい画像パスをページにエコーバックする前に、PHP スクリプトで変数$_GET['x']と変数を取得$_GET['y']して TimThumb に渡すだけで済みます。

于 2011-07-28T16:26:29.693 に答える