教你写个QQ防红跳转(倒计时版)

教你写个QQ防红跳转(倒计时版)

简单而言就是检测到在qq中打开网页后显示如上页面,跳转到另一个网站。步骤很简单:

  1. 判断当前打卡页面的是不是qq或者微信
  2. 显示倒计时,倒计时结束后跳转到其他页面

第一步:

检测qq或者微信比较简单,直接用 php 判断user_agent即可,以下为php代码

function inQQ()
{
    return strpos($_SERVER['HTTP_USER_AGENT'], 'QQ/') !== false;
}

function inWX()
{
    return strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false;
}

第二步:

检测到QQ或者微信打开之后,就需要输出倒计时页面了,页面使用简单的html,js即可实现

这里提供给大家一个倒计时的svg图片,只需要使用js设置定时器每隔一秒动态更改倒计时秒数,和倒计时条带宽度即可

教你写个QQ防红跳转(倒计时版)
<svg class="alert-circle" width="234" height="234" viewBox="0 0 234 234">
                <circle cx="117" cy="117" r="108" fill="#FFF" stroke="#43AEFA" stroke-width="17"></circle>
                <circle id="js-sec-circle" class="alert-sec-circle" cx="117" cy="117" r="108" fill="transparent" stroke="#F4F1F1" stroke-width="18" transform="rotate(-90 117 117)"></circle>
                <text class="alert-sec-unit" x="104" y="172" fill="#BDBDBD">秒</text>
            </svg>

js代码如下:

setInterval(function() {
if (0 == t){
    location.href="减到0跳转到哪里";
}else {
    t -= 1,
    document.getElementById("js-sec-text").innerHTML = t;/*设置倒计时秒数*/
    var e = Math.round(t / 10 * 735);/* 计算倒计时圆形条带条带宽度 */
    n.style.strokeDashoffset = e - 735 /*设置条带宽度*/
}},970);/* 倒计时执行时间间隔,这里设置的970ms,比一秒快了一点~~ */

整体的php代码架构如下,我们命名其为fanghong.php

<?php
if (inQQ() or inWX()):
?>
<html>
倒计时跳转html
</html>
<?php
die();
endif;
?>

如何使用呢?

直接将 fanghong.php和你的网站首页 index.php放在一起,然后在index.php顶部 include "fanghong.php" 即可。

以上就是QQ防红跳转(倒计时版)的基本原理,感兴趣的伙伴欢迎评论留言...

懒人版直接使用

为了方便各位用户,站长写好了一个fanghong.php,做了分辨率自适应,添加了bing壁纸,一言等美化可直接使用,5.66交个朋友

给TA打赏
共{{data.count}}人
人已打赏
建站教程技术活

函数即服务,一步到位!

2022-11-15 14:13:11

建站教程

RuleApi 最牛的typecho APP插件

2023-8-27 22:28:14

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索