freepayzz 发表于 2024-7-23 17:51

网站禁止PC电脑访问,只允许手机访问

限制网页只在手机端中打开,网站屏蔽PC端访问JS代码,网站只允许手机端访问
<script type="text/javascript">
if(window.screen.width==0){window.location.replace("https://xxxx.com")};
var system={win:false,mac:false,xll:false};
var p = navigator.platform;
system.win=p.indexOf("Win")==0;
system.mac=p.indexOf("Mac")==0;
system.x11=(p=="X11") || (p.indexOf("Linux")==0);
if(system.win||system.mac||system.xll) {
location.replace("https://xxxx.com");
}
</script>

wudalang123 发表于 2024-7-25 10:03

这段代码存在一些问题,导致它可能不会按预期工作:

1. 第一行的 `if(window.screen.width==0){window.location.replace("https://xxxx.com");};` 这个条件检查是不准确的。`screen.width` 通常不会是0,而且这个条件也放在了 `<script>` 标签的外面。

2. `system.win`, `system.mac`, `system.x11` 这些变量的设置逻辑是正确的,但是它们并没有被用来做任何操作。

3. 代码中使用了 `location.replace` 来重定向用户,但是没有考虑到移动设备上的浏览器可能也会模拟桌面环境。

为了实现限制网页只在手机端打开,屏蔽PC端访问,我们可以修改这段代码

```javascript
<script type="text/javascript">
// 检测是否是移动设备
var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);

// 如果是桌面环境,重定向到指定网址
if (!isMobile && /Mobi|Android/i.test(navigator.userAgent) === false) {
    window.location.replace("https://xxxx.com");
}
</script>
```



luxvn 发表于 2024-7-23 21:49

dsa9986 发表于 2024-7-23 21:37
感谢分享!!!

感谢分享

jackfeng2019 发表于 2024-7-23 21:57

感谢,可以试一下

kittylang 发表于 2024-7-23 22:05

啊?安卓手机也是Linux{:1_925:}

Ou7 发表于 2024-7-23 22:07

把它改成只能电脑打开不能手机打开{:1_886:}

dujiu3611 发表于 2024-7-23 22:07

挺好的,正好放在最近的一个测试中,感谢分享

iuixk 发表于 2024-7-23 22:19

感谢大佬分享,很实用!

岂是善类 发表于 2024-7-23 22:34

感谢分享

li513216760 发表于 2024-7-23 22:40

感谢分享

jasonwei 发表于 2024-7-23 23:04

感谢分享,看起来还可以
页: [1] 2 3 4
查看完整版本: 网站禁止PC电脑访问,只允许手机访问