首頁 >後端開發 >php教程 >javascript - JS获得screensize变量怎么传给PHP以调用不同图片?

javascript - JS获得screensize变量怎么传给PHP以调用不同图片?

WBOY
WBOY原創
2016-06-06 20:08:251128瀏覽

网站想做成自适应的,php会自动生成的不同尺寸的摘要缩略图,但是php没办法获取用户屏幕尺寸,只能靠js来获取,js获取后传进php的数据是string类型,用(int) intval()都无法转换成整数,无法做数值比较,求解~!

<code><script type="text/javascript">
    var sw = document.body.clientWidth;
</script>
<?php $sw = "<script type=text/javascript>document.write(sw)";
$sw_int = (int)$sw;
if ($sw_int > 1600) {
    //调用1600宽的图片
} elseif ($sw_int > 1000) {
    //调用1000宽的图片
} else {
    //调用800宽的图片
}
?></code>

回复内容:

网站想做成自适应的,php会自动生成的不同尺寸的摘要缩略图,但是php没办法获取用户屏幕尺寸,只能靠js来获取,js获取后传进php的数据是string类型,用(int) intval()都无法转换成整数,无法做数值比较,求解~!

<code><script type="text/javascript">
    var sw = document.body.clientWidth;
</script>
<?php $sw = "<script type=text/javascript>document.write(sw)";
$sw_int = (int)$sw;
if ($sw_int > 1600) {
    //调用1600宽的图片
} elseif ($sw_int > 1000) {
    //调用1000宽的图片
} else {
    //调用800宽的图片
}
?></code>

这个通常不这样做,php生成不同尺寸的缩略图目的就是静态化,而且缩略图名称应该是规则的,比如image_0153431242_small.jpg, image_0153431242_middle.jpg, image_0153431242_big.jpg, image_0153431242_source.jpg这样
因此前端js只要调整javascript - JS获得screensize变量怎么传给PHP以调用不同图片?就好了,而不是传递给php处理,例如
javascript - JS获得screensize变量怎么传给PHP以调用不同图片?
这种格式不容易处理浏览器端缓存,影响页面二次打开的速度。

另外,你可能不明白php工作原理。对于php来说,js只是被php处理并输出的字符串,即js代码执行的时候php进程早就关闭了。php在服务器端运行,js在浏览器端运行,两者不能随时交互。

自己百度一下srcset这个标签,张鑫旭有几篇讲这个的

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn