返回列表 发布新帖

QQ号码价值评估系统html代码

1357 0
小K网牛逼 发表于 7 小时前 | 查看全部 阅读模式 <

马上注册,结交更多好友,享用更多功能,让你轻松玩转小K网。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
由于前面刷视频经常刷到有人直播QQ号码价值评估,想着也搞一个玩玩,找了一圈接口好像很多都用不来,下面提供一个自己随便搞得页面,有兴趣的大佬可以完善下
HTML代码如下:
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>QQ号码价值评估系统-在线工具-丢塔网(www.diuta.com)</title>
  7.     <style>
  8.         body {
  9.             font-family: 'Microsoft YaHei', sans-serif;
  10.             background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
  11.             min-height: 100vh;
  12.             margin: 0;
  13.             padding: 20px;
  14.         }
  15.         .container {
  16.             max-width: 800px;
  17.             margin: 0 auto;
  18.             background: white;
  19.             border-radius: 15px;
  20.             box-shadow: 0 10px 30px rgba(0,0,0,0.1);
  21.             padding: 30px;
  22.             position: relative;
  23.             overflow: hidden;
  24.         }
  25.         h1 {
  26.             color: #12b7f5;
  27.             text-align: center;
  28.             margin-bottom: 30px;
  29.             position: relative;
  30.         }
  31.         h1:after {
  32.             content: "";
  33.             display: block;
  34.             width: 100px;
  35.             height: 3px;
  36.             background: #12b7f5;
  37.             margin: 10px auto;
  38.         }
  39.         .search-box {
  40.             display: flex;
  41.             margin-bottom: 30px;
  42.         }
  43.         #qq-input {
  44.             flex: 1;
  45.             padding: 12px 15px;
  46.             border: 2px solid #e0e0e0;
  47.             border-radius: 8px 0 0 8px;
  48.             font-size: 16px;
  49.             outline: none;
  50.             transition: border 0.3s;
  51.         }
  52.         #qq-input:focus {
  53.             border-color: #12b7f5;
  54.         }
  55.         #search-btn {
  56.             padding: 0 25px;
  57.             background: linear-gradient(45deg, #12b7f5, #0e9fd8);
  58.             color: white;
  59.             border: none;
  60.             border-radius: 0 8px 8px 0;
  61.             cursor: pointer;
  62.             font-size: 16px;
  63.             font-weight: bold;
  64.             transition: all 0.3s;
  65.         }
  66.         #search-btn:hover {
  67.             background: linear-gradient(45deg, #0e9fd8, #0b8fc7);
  68.             transform: translateY(-2px);
  69.         }
  70.         .result-container {
  71.             display: none;
  72.             animation: fadeIn 0.5s;
  73.         }
  74.         @keyframes fadeIn {
  75.             from { opacity: 0; transform: translateY(20px); }
  76.             to { opacity: 1; transform: translateY(0); }
  77.         }
  78.         .basic-info {
  79.             display: flex;
  80.             align-items: center;
  81.             margin-bottom: 25px;
  82.             padding-bottom: 25px;
  83.             border-bottom: 1px dashed #e0e0e0;
  84.         }
  85.         .avatar {
  86.             width: 100px;
  87.             height: 100px;
  88.             border-radius: 50%;
  89.             margin-right: 25px;
  90.             border: 3px solid #12b7f5;
  91.             box-shadow: 0 5px 15px rgba(18, 183, 245, 0.3);
  92.         }
  93.         .value-container {
  94.             background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  95.             border-radius: 10px;
  96.             padding: 20px;
  97.             margin: 20px 0;
  98.             box-shadow: inset 0 0 10px rgba(0,0,0,0.05);
  99.         }
  100.         .value-text {
  101.             text-align: center;
  102.             font-size: 28px;
  103.             font-weight: bold;
  104.             margin-bottom: 15px;
  105.             color: #333;
  106.         }
  107.         .value-amount {
  108.             font-size: 36px;
  109.             color: #ff5722;
  110.             text-shadow: 0 2px 5px rgba(255, 87, 34, 0.2);
  111.         }
  112.         .value-indicator {
  113.             height: 20px;
  114.             background: #e0e0e0;
  115.             border-radius: 10px;
  116.             margin: 15px 0;
  117.             overflow: hidden;
  118.             position: relative;
  119.         }
  120.         .value-bar {
  121.             height: 100%;
  122.             background: linear-gradient(90deg, #ff9500, #ff2d55);
  123.             width: 0;
  124.             transition: width 1s cubic-bezier(0.68, -0.55, 0.27, 1.55);
  125.             position: relative;
  126.         }
  127.         .value-bar:after {
  128.             content: "";
  129.             position: absolute;
  130.             right: 0;
  131.             top: 0;
  132.             bottom: 0;
  133.             width: 10px;
  134.             background: rgba(255,255,255,0.5);
  135.             transform: skewX(-15deg);
  136.         }
  137.         .detail-container {
  138.             margin-top: 30px;
  139.         }
  140.         .detail-title {
  141.             font-size: 18px;
  142.             color: #12b7f5;
  143.             margin-bottom: 15px;
  144.             padding-bottom: 5px;
  145.             border-bottom: 1px solid #e0e0e0;
  146.         }
  147.         .detail-item {
  148.             display: flex;
  149.             justify-content: space-between;
  150.             align-items: center;
  151.             padding: 12px 15px;
  152.             margin-bottom: 10px;
  153.             background: #f8f9fa;
  154.             border-radius: 8px;
  155.             transition: all 0.3s;
  156.         }
  157.         .detail-item:hover {
  158.             background: #e9ecef;
  159.             transform: translateX(5px);
  160.         }
  161.         .detail-label {
  162.             font-weight: bold;
  163.             color: #555;
  164.         }
  165.         .detail-score {
  166.             font-weight: bold;
  167.             color: #ff5722;
  168.         }
  169.         .loading {
  170.             text-align: center;
  171.             display: none;
  172.             margin: 20px 0;
  173.         }
  174.         .loading-spinner {
  175.             display: inline-block;
  176.             width: 40px;
  177.             height: 40px;
  178.             border: 4px solid rgba(18, 183, 245, 0.2);
  179.             border-radius: 50%;
  180.             border-top-color: #12b7f5;
  181.             animation: spin 1s linear infinite;
  182.         }
  183.         @keyframes spin {
  184.             to { transform: rotate(360deg); }
  185.         }
  186.         .error {
  187.             color: #ff5722;
  188.             text-align: center;
  189.             padding: 15px;
  190.             background: #fff3f3;
  191.             border-radius: 8px;
  192.             margin: 20px 0;
  193.             display: none;
  194.         }
  195.         .special-tag {
  196.             display: inline-block;
  197.             padding: 3px 8px;
  198.             background: #ff5722;
  199.             color: white;
  200.             border-radius: 4px;
  201.             font-size: 12px;
  202.             margin-left: 10px;
  203.             vertical-align: middle;
  204.         }
  205.     </style>
  206. </head>
  207. <body>
  208.     <div class="container">
  209.         <h1>QQ号码价值评估系统</h1>
  210.         <div class="search-box">
  211.             <input type="text" id="qq-input" placeholder="请输入QQ号码" maxlength="11">
  212.             <button id="search-btn">立即评估</button>
  213.         </div>
  214.         <div class="loading" id="loading">
  215.             <div class="loading-spinner"></div>
  216.             <p>正在评估中,请稍候...</p>
  217.         </div>
  218.         <div class="error" id="error"></div>
  219.         <div class="result-container" id="result-container">
  220.             <div class="basic-info">
  221.                 <img id="avatar" class="avatar" src="" alt="QQ头像">
  222.                 <div>
  223.                     <h2 id="qq-nickname"></h2>
  224.                     <p>QQ号码: <span id="qq-number"></span></p>
  225.                     <p>QQ邮箱: <span id="qq-email"></span></p>
  226.                 </div>
  227.             </div>
  228.             <div class="value-container">
  229.                 <div class="value-text">
  230.                     评估价值: <span class="value-amount" id="value-score">0</span>元
  231.                 </div>
  232.                 <div class="value-indicator">
  233.                     <div class="value-bar" id="value-bar"></div>
  234.                 </div>
  235.             </div>
  236.             <div class="detail-container">
  237.                 <h3 class="detail-title">详细评估指标</h3>
  238.                 <div class="detail-item">
  239.                     <span class="detail-label">号码长度</span>
  240.                     <span class="detail-score" id="length-score">0分</span>
  241.                 </div>
  242.                 <div class="detail-item">
  243.                     <span class="detail-label">重复数字</span>
  244.                     <span class="detail-score" id="repeat-score">0分</span>
  245.                 </div>
  246.                 <div class="detail-item">
  247.                     <span class="detail-label">豹子号加成</span>
  248.                     <span class="detail-score" id="straight-score">0分</span>
  249.                 </div>
  250.                 <div class="detail-item">
  251.                     <span class="detail-label">顺子号加成</span>
  252.                     <span class="detail-score" id="sequence-score">0分</span>
  253.                 </div>
  254.                 <div class="detail-item">
  255.                     <span class="detail-label">特殊组合</span>
  256.                     <span class="detail-score" id="special-score">0分</span>
  257.                 </div>
  258.             </div>
  259.         </div>
  260.     </div>

  261.     <script>
  262.         document.getElementById('search-btn').addEventListener('click', function() {
  263.             const qqNumber = document.getElementById('qq-input').value.trim();
  264.             if (!qqNumber || !/^[1-9]\d{4,10}$/.test(qqNumber)) {
  265.                 showError('请输入5-11位的有效QQ号码');
  266.                 return;
  267.             }
  268.             
  269.             document.getElementById('loading').style.display = 'block';
  270.             document.getElementById('error').style.display = 'none';
  271.             document.getElementById('result-container').style.display = 'none';
  272.             
  273.             // 模拟API请求延迟
  274.             setTimeout(() => {
  275.                 try {
  276.                     const result = evaluateQQValue(qqNumber);
  277.                     displayResult(qqNumber, result);
  278.                 } catch (error) {
  279.                     showError('评估过程中出现错误');
  280.                 } finally {
  281.                     document.getElementById('loading').style.display = 'none';
  282.                 }
  283.             }, 800);
  284.         });

  285.         function displayResult(qq, data) {
  286.             document.getElementById('avatar').src = `https://q2.qlogo.cn/headimg_dl?dst_uin=${qq}&spec=640`;
  287.             document.getElementById('qq-nickname').textContent = `QQ用户`;
  288.             document.getElementById('qq-number').textContent = qq;
  289.             document.getElementById('qq-email').textContent = `${qq}@qq.com`;
  290.             
  291.             // 更新评估分数
  292.             document.getElementById('length-score').textContent = `${data.lengthScore}分`;
  293.             document.getElementById('repeat-score').textContent = `${data.repeatScore}分`;
  294.             document.getElementById('straight-score').textContent = `${data.straightScore}分`;
  295.             document.getElementById('sequence-score').textContent = `${data.sequenceScore}分`;
  296.             document.getElementById('special-score').textContent = `${data.specialScore}分`;
  297.             document.getElementById('value-score').textContent = data.totalValue;
  298.             
  299.             // 动画效果
  300.             setTimeout(() => {
  301.                 document.getElementById('value-bar').style.width = `${Math.min(100, data.totalValue / 50000 * 100)}%`;
  302.             }, 100);
  303.             
  304.             document.getElementById('result-container').style.display = 'block';
  305.         }

  306.         function evaluateQQValue(qq) {
  307.             const length = qq.length;
  308.             
  309.             // 1. 号码长度估值(5-11位)
  310.             const lengthValue = (12 - length) * 5000;  // 越短价值越高
  311.             const lengthScore = Math.round(lengthValue / 500);
  312.             
  313.             // 2. 重复数字估值
  314.             let repeatValue = 0;
  315.             const counts = {};
  316.             qq.split('').forEach(num => {
  317.                 counts[num] = (counts[num] || 0) + 1;
  318.             });
  319.             
  320.             Object.values(counts).forEach(cnt => {
  321.                 if(cnt >= 2) {
  322.                     repeatValue += Math.pow(10, cnt) * 100; // 重复次数越多价值越高
  323.                 }
  324.             });
  325.             const repeatScore = Math.round(repeatValue / 1000);
  326.             
  327.             // 3. 豹子号估值(3+连续相同数字)
  328.             let straightValue = 0;
  329.             const straightMatches = qq.match(/(\d)\1{2,}/g) || [];
  330.             straightMatches.forEach(match => {
  331.                 straightValue += Math.pow(10, match.length) * 200;
  332.             });
  333.             const straightScore = Math.round(straightValue / 1000);
  334.             
  335.             // 4. 顺子号估值(连续递增/递减)
  336.             let sequenceValue = 0;
  337.             if(/(123|234|345|456|567|678|789|987|876|765|654|543|432|321)/.test(qq)) {
  338.                 sequenceValue = 5000;
  339.             }
  340.             const sequenceScore = Math.round(sequenceValue / 100);
  341.             
  342.             // 5. 特殊组合估值
  343.             let specialValue = 0;
  344.             if(/^[1-9]0+$/.test(qq)) { // 结尾多个0
  345.                 specialValue = 3000 * (qq.match(/0/g) || []).length;
  346.             }
  347.             const specialScore = Math.round(specialValue / 100);
  348.             
  349.             const totalValue = lengthValue + repeatValue + straightValue + sequenceValue + specialValue;
  350.             
  351.             return {
  352.                 lengthScore,
  353.                 repeatScore,
  354.                 straightScore,
  355.                 sequenceScore,
  356.                 specialScore,
  357.                 totalValue
  358.             };
  359.         }

  360.         function showError(message) {
  361.             const errorEl = document.getElementById('error');
  362.             errorEl.textContent = message;
  363.             errorEl.style.display = 'block';
  364.         }
  365.     </script>
  366. </body>
  367. </html>
复制代码

QQ号码价值评估系统html代码

QQ号码价值评估系统html代码

提供一个演示地址:https://diuta.com/api/qq_value.html

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表