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

WBOY
풀어 주다: 2016-06-06 20:08:25
원래의
1078명이 탐색했습니다.

网站想做成自适应的,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这个标签,张鑫旭有几篇讲这个的

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!