【发布时间】:2021-08-16 10:19:43
【问题描述】:
我编写了代码来获取移动屏幕分辨率检查的文档分辨率。事件侦听器检查客户端宽度,如果分辨率 true,否则为 false。
<script>
window.addEventListener("resize", function (e){
var width = document.body.clientWidth;
console.log(document.body.clientWidth);
if (width <= 768) {<?php $mobileScreenRes = true; ?> console.log("if: " + <?php echo json_encode($mobileScreenRes); ?>); }
else {<?php $mobileScreenRes = false; ?>console.log("else : " + <?php echo json_encode($mobileScreenRes); ?>); }
console.log("final:" + <?php var_export($mobileScreenRes); ?>);
console.log("isset :" + <?php echo isset($mobileScreenRes); ?>);
});
</script>
我可以得到宽度,但不能按照我想要的方式使用它。 $mobileScreenRes 变量是一个全局变量。控制台输出为:
795
VM45496:6 else : false
VM45496:7 final : false
VM45496:8 isset : 1
582
VM45496:5 if : true
VM45496:7 final :false
VM45496:8 isset : 1
我不明白为什么 final 总是假的,即使有 if 语句?
【问题讨论】:
-
PHP首先在服务器端执行然后JS在客户端执行
标签: javascript php variables mobile screen