我試圖將這個:http://adaptive-images.com/轉換成網站。 它將依靠JS-Cookies來獲得屏幕分辨率,以便適應圖像大小的PHP腳本知道要傳遞的分辨率。 不幸的是,它以某種方式無法設置cookie(並回落到480分辨率...),我不知道爲什麼。它所做的只是:Javascript cookie not generated
<script type="text/javascript">
document.cookie='resolution='+Math.max(screen.width,screen.height)+'; expires=; path=/';
</script>
權限在文件的頭部。然而,cookie似乎從未被設置,我只會看到(他們應該出現在Chrome DevTools的資源部分,對吧?)GoogleAnalytics創建的cookie(然而,這似乎不是問題,因爲刪除GA使得沒有不同)。
我以前從未使用過JS cookies,但是從我在網上可以看到的語法看來,這個語法似乎很完美,而且我也沒有在控制檯或其他地方得到任何類型的錯誤消息,它似乎忽略了cookie設置操作。
長話短說:我不知道這裏發生了什麼事?
謝謝!
編輯:也許這是一個PHP邊的問題,所以我也會添加這部分。 會發生什麼情況如下:
第一關:
$resolutions = array(1920,1382, 992, 768, 480);
然後:
if (is_numeric($_COOKIE['resolution'])) {
$client_width = (int) $_COOKIE["resolution"];
rsort($resolutions);
$resolution = $resolutions[0];
foreach ($resolutions as $break_point) {
if ($client_width <= $break_point) {
$resolution = $break_point;
}
}
}
然而,該腳本將跳投返回一個480的分辨率,即使我的屏幕是1920?至於我得到的代碼,它應該是返回1920年,所以我想它似乎使用後備案件$_COOKIE['resolution']
未設置,這將回到480.
謝謝,不知道會話cookie沒有出現在調試器!我在問題中加入了PHP。 – m90
會話cookie在我的Chrome調試器中顯示。我不知道PHP,所以我不能評論你的PHP。 – jfriend00
不過謝謝! – m90