你在混淆PHP和jQuery在一起。 PHP是服務器端語言,jQuery是瀏覽器端。 PHP不能告訴訪客窗口的寬度是什麼,除非你使用jQuery通過使用Ajax來傳遞該值。
即使如此,如果您嘗試使用PHP將塊限制爲3或4,不會傳遞屏幕寬度,直到訪問者加載文檔之後。
最好的辦法是使用jQuery來檢測屏幕寬度,就像您已經使用$(window).width()
然後使用CSS隱藏/顯示正確數量的塊一樣。這可以通過溢出和/或顯示無/塊來實現。
例子:
var width = $(window).width();
if(width >= 1024) {
$('.block-4').show();
} else if(width < 1024) {
$('.block-4').hide();
}
但是,這是一個非常粗略的例子,只是爲了說明它給你的邏輯,並可能在您的環境中工作。
編輯:
這裏是你想實現與PHP和jQuery什麼工作的例子。
你將需要兩個文件:
的index.php:
$(document).ready(function() {
var width = $(window).width();
$.post("blocks.php", { width: width }).done(function(data) {
$('.content').html(data);
});
});
blocks.php
<?php
$width = $_POST['width'];
if($width >= 1024) {
echo '4';
} else {
echo '3';
}
?>
那麼這將要做的是發佈用戶將屏幕寬度調整爲一個名爲blocks.php的PHP文件,然後這個PHP文件將返回4或3,具體取決於屏幕大小,然後使用jQuery,它將更新4或3類名爲「content」的類的內容。
您將PHP和jQuery混淆在一起。 PHP是服務器端語言,jQuery是瀏覽器端。除非使用jQuery通過使用Ajax傳遞該值,否則PHP無法知道訪問者窗口的寬度。 – Karl
您在此嘗試做什麼? '$(window).width()'不是PHP。 –
我同意@Karl,無論如何你的代碼對我來說沒有任何意義。 –