PageSourceSearch

https://www.ocrm.ai/about

html ocrm.ai collected 2026-10-05 16:49:02 UTC 27,255 bytes, 722 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3<head>
4  <meta charset="utf-8" />
5  <meta content="width=device-width, initial-scale=1.0" name="viewport" />
6  <title>Introduction to OCRM | OCRM</title>
7  <meta name="keywords" content="Introduction to OCRM,ai crm system,crm,ai crm software,ai crm management system,ai crm Customer Relationship Management System">
8  <meta name="description" content="OCRM integrates core functions such as AI task management, AI schedule management, and intelligent AI CRM customer management, creating an AI-driven enterprise customer relationship management and intelligent office collaboration platform.">
9  <link href="/public/static/assets/brand/logo-mark.png" rel="icon" sizes="80x80" type="image/png"/>
10  <link href="/public/static/assets/favicon/favicon.ico" rel="icon" sizes="any" type="image/x-icon"/>
11  <link href="./favicon.ico" rel="shortcut icon" type="image/x-icon"/>
12  <link rel="stylesheet" href="/public/static/layui/css/layui.css" />
13  
13<script src="/public/static/js/jquery-1.11.3.min.js"></script>
13
14  
14<script src="/public/static/layui/layui.all.js"></script>
14
15  
15<script src="/public/static/assets/tailwindcss.js"></script>
15
16  <link href="/public/static/assets/googleapis-inter.css" rel="stylesheet"/>
17  <link href="/public/static/assets/googleapis-material.css" rel="stylesheet"/>
18  
18<script id="tailwind-config">
19    tailwind.config = {
20      darkMode: "class",
21      theme: {
22          extend: {
23              colors: {
24                  "primary": "#0b50da",
25                  "background-light": "#ffffff",
26                  "background-dark": "#101622",
27              },
28              fontFamily: {
29                  "display": ["Inter", "sans-serif"]
30              },
31              borderRadius: {
32                  "DEFAULT": "0.25rem",
33                  "lg": "0.5rem",
34                  "xl": "0.75rem",
35                  "full": "9999px"
36              },
37          },
38      },
39    }
40  </script>
40
41  <style>
42    body {
43        font-family: 'Inter', sans-serif;
44    }
45    .material-symbols-outlined {
46        font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
47    }
48    .customer-server-container {
49      position: fixed;
50      right: 30px;
51      bottom: 100px;
52      cursor: pointer;
53      width: 70px;
54      height: 70px;
55      z-index: 20230325;
56    }
57
58    .customer-server-container .customer-service {
59      width: 70px;
60      height: 70px;
61    }
62
63    .customer-server-container .qr-code {
64      display: none;
65      position: absolute;
66      padding: 16px;
67      border-radius: 8px;
68      right: 110%;
69      top: 50%;
70      transform: translateY(-50%);
71      width: 130px;
72      box-shadow: 0 2px 12px 0 #23ba463f;
73      z-index: 20230326;
74      background-color: #fff;
75    }
76
77    .customer-server-container .qr-code img {
78      width: 100%;
79      height: 100%;
80    }
81
82    .customer-server-container:hover .qr-code {
83      display: block;
84    }
85  </style>
86</head>
87<body class="bg-white text-slate-900">
88  <div class="customer-server-container">
89    <img class="customer-service" src="/public/static/assets/images/customerService.png" alt="">
90    <div class="qr-code">
91      <img src="/public/static/assets/images/qrCode.png" alt="">
92    </div>
93  </div>
94  <header class="sticky top-0 z-50 w-full border-b border-slate-100 bg-white/80 backdrop-blur-md relative">
95    <div class="mx-auto flex max-w-7xl items-center justify-between px-6 py-4">
96      <a class="flex items-center gap-2.5" href="./index">
97        <img alt="OCRM logo" class="h-10 w-10 rounded-xl object-contain" src="/public/static/assets/brand/logo-mark.png" />
98        <h2 class="text-xl font-bold tracking-tight">OCRM</h2>
99      </a>
100      <nav class="hidden md:flex items-center gap-10">
101        <a class="text-sm font-semibold hover:text-primary " href="./">Home</a>
102        <a class="text-sm font-semibold hover:text-primary " href="./features">Features</a>
103        <a class="text-sm font-semibold hover:text-primary " href="./pricing">Pricing</a>
104        <a class="text-sm font-semibold hover:text-primary text-primary" href="./about">About</a>
105        <a class="text-sm font-semibold hover:text-primary " href="./news">News</a>
106      </nav>
107      <div class="flex items-center gap-2 sm:gap-3">
108        <button class="wukong_qiao hidden sm:flex h-10 items-center justify-center rounded-lg bg-slate-100 px-5 text-sm font-bold">Book a Demo</button>
109        <button class="wukong_ai flex h-10 items-center justify-center rounded-lg bg-blue-600 px-4 sm:px-5 text-sm font-bold text-white">Start Free</button>
110        <button
111          id="mobileNavToggle"
112          type="button"
113          class="inline-flex md:hidden h-10 w-10 items-center justify-center rounded-lg border border-slate-200 bg-white text-slate-700 hover:bg-slate-50"
114          aria-controls="mobileNav"
115          aria-expanded="false"
116          aria-label="Open menu"
117        >
118          <span class="material-symbols-outlined text-[22px] leading-none">menu</span>
119        </button>
120      </div>
121    </div>
122
123    <!-- Mobile (H5) nav: only visible under md -->
124    <div
125      id="mobileNav"
126      class="md:hidden hidden absolute left-0 right-0 top-full z-50 border-b border-slate-100 bg-white shadow-lg"
127    >
128      <div class="mx-auto max-w-7xl px-6 py-4">
129        <nav class="flex flex-col gap-1">
130          <a class="rounded-lg px-3 py-2 text-sm font-semibold hover:bg-slate-50 hover:text-primary " href="./index">Home</a>
131          <a class="rounded-lg px-3 py-2 text-sm font-semibold hover:bg-slate-50 hover:text-primary " href="./features">Features</a>
132          <a class="rounded-lg px-3 py-2 text-sm font-semibold hover:bg-slate-50 hover:text-primary " href="./pricing">Pricing</a>
133          <a class="rounded-lg px-3 py-2 text-sm font-semibold hover:bg-slate-50 hover:text-primary text-primary" href="./about">About</a>
134          <a class="rounded-lg px-3 py-2 text-sm font-semibold hover:bg-slate-50 hover:text-primary " href="./news">News</a>
135        </nav>
136
137        <div class="mt-4 grid grid-cols-2 gap-3">
138          <button class="wukong_qiao flex h-10 w-full items-center justify-center rounded-lg bg-slate-100 px-4 text-sm font-bold">Book a Demo</button>
139          <button class="wukong_ai flex h-10 w-full items-center justify-center rounded-lg bg-blue-600 px-4 text-sm font-bold text-white">Start Free</button>
140        </div>
141      </div>
142    </div>
143  </header>
144
145  
145<script>
146    (function () {
147      var toggle = document.getElementById('mobileNavToggle');
148      var nav = document.getElementById('mobileNav');
149      if (!toggle || !nav) return;
150
151      function setOpen(isOpen) {
152        if (isOpen) {
153          nav.classList.remove('hidden');
154          toggle.setAttribute('aria-expanded', 'true');
155        } else {
156          nav.classList.add('hidden');
157          toggle.setAttribute('aria-expanded', 'false');
158        }
159      }
160
161      toggle.addEventListener('click', function () {
162        var isOpen = toggle.getAttribute('aria-expanded') === 'true';
163        setOpen(!isOpen);
164      });
165
166      nav.addEventListener('click', function (e) {
167        var t = e.target;
168        if (t && t.tagName === 'A') setOpen(false);
169      });
170
171      document.addEventListener('click', function (e) {
172        var isOpen = toggle.getAttribute('aria-expanded') === 'true';
173        if (!isOpen) return;
174        var target = e.target;
175        if (nav.contains(target) || toggle.contains(target)) return;
176        setOpen(false);
177      });
178
179      document.addEventListener('keydown', function (e) {
180        if (e.key === 'Escape') setOpen(false);
181      });
182    })();
183  </script>
183
184
185<script src="https://www.72crm.com/crmapi/plugin/assets/online-customer-service/0.5.15/widget/embed.js" data-channel="cddff5f22903471aba3d3dd877c2054a58dea4ef8eea477bbb428daba6918248"></script>
185
186  <main class="mx-auto max-w-7xl px-6 py-16 space-y-20">
187    <section class="grid gap-10 lg:grid-cols-2 lg:items-center">
188      <div>
189        <span class="inline-block rounded-full bg-blue-50 px-3 py-1 text-xs font-bold text-blue-600">About</span>
190        <h1 class="mt-4 text-5xl font-black leading-tight">Turn relationships into organised opportunity.</h1>
191        <p class="mt-6 text-lg text-slate-600">OCRM is designed to solve a problem experienced by many founders and business developers: managing large networks built through real-world interactions.</p>
192        <p class="mt-4 text-lg text-slate-600">Instead of losing track of conversations, introductions, and opportunities, OCRM turns every interaction into structured business intelligence.</p>
193        <p class="mt-4 text-lg text-slate-600 font-semibold">The goal is simple:</p>
194        <button class="wukong_ai mt-8 rounded-xl bg-blue-600 px-8 py-4 font-bold text-white">Start Free</button>
195      </div>
196      <img src="/public/static/assets/images/about/about.png" class="w-full rounded-2xl border border-slate-100" alt="" />
197    </section>
198
199    <section>
200      <h2 class="text-3xl font-black">Why OCRM</h2>
201      <p class="mt-6 text-lg leading-relaxed text-slate-600">Traditional CRMs were built for structured sales pipelines. But real business development does not happen only inside pipelines.</p>
202      <p class="mt-4 text-lg leading-relaxed text-slate-600">OCRM is designed specifically for relationship-driven professionals who constantly meet new people and need a smarter way to manage their network. Instead of forcing users into rigid sales processes, OCRM captures the context of every interaction and turns it into structured opportunities.</p>
203    </section>
204
205    <section class="py-20 bg-slate-50 -mx-6 lg:-mx-10 px-6 lg:px-10 rounded-[2.5rem]">
206      <div class="text-center max-w-3xl mx-auto mb-16">
207      <h2 class="text-slate-900 text-4xl font-bold mb-4">Core Concept: Event Containers</h2>
208      <p class="text-slate-600 text-lg">At the heart of OCRM is a new concept: Event Containers. An Event Container captures everything related to a business interaction—making relationship intelligence searchable, trackable, and actionable.</p>
209      </div>
210      <div class="grid md:grid-cols-3 gap-8">
211      <div class="bg-white p-8 rounded-2xl shadow-sm border border-slate-100 hover:shadow-md transition-shadow">
212      <div class="w-12 h-12 bg-primary/10 rounded-xl flex items-center justify-center text-primary mb-6">
213      <span class="material-symbols-outlined">event</span>
214      </div>
215      <h3 class="text-slate-900 text-xl font-bold mb-3">Event-Driven Relationship Tracking</h3>
216      <p class="text-slate-600 leading-relaxed">Every interaction becomes structured knowledge instead of forgotten notes.</p>
217      </div>
218      <div class="bg-white p-8 rounded-2xl shadow-sm border border-slate-100 hover:shadow-md transition-shadow">
219      <div class="w-12 h-12 bg-primary/10 rounded-xl flex items-center justify-center text-primary mb-6">
220      <span class="material-symbols-outlined">account_tree</span>
221      </div>
222      <h3 class="text-slate-900 text-xl font-bold mb-3">Network Intelligence</h3>
223      <p class="text-slate-600 leading-relaxed">Your network becomes an organised asset instead of scattered memory.</p>
224      </div>
225      <div class="bg-white p-8 rounded-2xl shadow-sm border border-slate-100 hover:shadow-md transition-shadow">
226      <div class="w-12 h-12 bg-primary/10 rounded-xl flex items-center justify-center text-primary mb-6">
227      <span class="material-symbols-outlined">smart_toy</span>
228      </div>
229      <h3 class="text-slate-900 text-xl font-bold mb-3">AI-Assisted Follow-Ups</h3>
230      <p class="text-slate-600 leading-relaxed">Your CRM becomes a proactive business assistant.</p>
231      </div>
232      </div>
233    </section>
234
235    <section class="py-24">
236    <div class="flex flex-col lg:flex-row gap-16 items-center">
237    <div class="flex-1 order-2 lg:order-1">
238    <div class="grid grid-cols-2 gap-4">
239    <div class="space-y-4">
240    <div class="h-48 rounded-2xl bg-slate-200 overflow-hidden" style="background-image: url('/public/static/assets/images/about/unnamed-1.png'); background-size: cover;"></div>
241    <div class="h-64 rounded-2xl bg-slate-200 overflow-hidden" style="background-image: url('/public/static/assets/images/about/unnamed-2.png'); background-size: cover;"></div>
242    </div>
243    <div class="space-y-4 pt-8">
244    <div class="h-64 rounded-2xl bg-slate-200 overflow-hidden" style="background-image: url('/public/static/assets/images/about/unnamed-3.png'); background-size: cover;"></div>
245    <div class="h-48 rounded-2xl bg-slate-200 overflow-hidden" style="background-image: url('/public/static/assets/images/about/unnamed-4.png'); background-size: cover;"></div>
246    </div>
247    </div>
248    </div>
249    <div class="flex-1 order-1 lg:order-2">
250    <h2 class="text-slate-900 text-4xl font-bold mb-6">Early Access</h2>
251    <p class="text-slate-600 text-lg leading-relaxed mb-6">
252      OCRM is currently in early development. We are inviting a limited group of early users to help shape the product.
253    </p>
254    <p class="text-slate-600 text-lg leading-relaxed mb-6">Early users will receive: Priority access, Product feedback sessions, Founding user benefits.</p>
255    </div>
256    </div>
257    </section>
258
259    <section class="py-20 mb-20">
260      <div class="bg-primary rounded-[2.5rem] p-8 lg:p-20 text-center text-white relative overflow-hidden">
261      <div class="absolute inset-0 opacity-10 pointer-events-none" style="background-image: radial-gradient(circle at 2px 2px, white 1px, transparent 0); background-size: 40px 40px;"></div>
262      <div class="relative z-10">
263      <h2 class="text-4xl lg:text-6xl font-black mb-6">Join the Early Access List</h2>
264      <p class="text-primary-foreground/80 text-lg lg:text-xl mb-10 max-w-3xl mx-auto text-blue-100">
265        Interested in partnerships, early access, or enterprise deployments? Contact us or schedule a demo to learn more about OCRM.
266      </p>
267      <div class="flex flex-col sm:flex-row items-center justify-center gap-4">
268      <button class="wukong_ai w-full sm:w-auto bg-white text-primary font-bold py-4 px-10 rounded-xl text-lg hover:bg-blue-50 transition-colors">Start Free</button>
269      <button class="wukong_qiao w-full sm:w-auto border-2 border-white/40 text-white font-bold py-4 px-10 rounded-xl text-lg hover:bg-white/10 transition-colors">Book a Demo</button>
270      </div>
271      </div>
272      </div>
273    </section>
274  </main>
275<style>
276  :root {
277    --bg-mask: rgba(17, 24, 39, 0.28);
278    --text-primary: #111827;
279    --text-secondary: #6b7280;
280    --panel: #ffffff;
281    --border: #e5e7eb;
282    --shadow: 0 18px 40px rgba(17, 24, 39, 0.16);
283    --radius: 12px;
284    --green: #22c55e;
285  }
286  .modal-backdrop {
287    position: fixed;
288    inset: 0;
289    background: rgba(15, 23, 42, 0.45);
290    z-index: 10000;
291  }
292
293  .modal {
294    width: min(420px, 92vw);
295    background: var(--panel);
296    border-radius: 14px;
297    box-shadow: var(--shadow);
298    overflow: hidden;
299    position: fixed;
300    left: 50%;
301    top: 50%;
302    transform: translate(-50%, -50%);
303    z-index: 10001;
304  }
305
306  .modal__header {
307    position: relative;
308    padding: 18px 22px 14px;
309    text-align: left;
310    font-weight: 600;
311    letter-spacing: 0.2px;
312  }
313
314  .modal__title {
315    font-size: 16px;
316    line-height: 22px;
317  }
318
319  .modal__close {
320    position: absolute;
321    top: 14px;
322    right: 14px;
323    width: 34px;
324    height: 34px;
325    border-radius: 10px;
326    border: 1px solid transparent;
327    background: transparent;
328    display: grid;
329    place-items: center;
330    cursor: pointer;
331    color: #6b7280;
332  }
333
334  .modal__close:hover {
335    background: #f9fafb;
336    border-color: var(--border);
337    color: #374151;
338  }
339
340  .modal__body {
341    padding: 10px 22px 22px;
342  }
343
344  .agent {
345    display: grid;
346    place-items: center;
347    gap: 10px;
348    padding-top: 2px;
349  }
350
351  .avatar {
352    position: relative;
353    width: 84px;
354    height: 84px;
355    border-radius: 999px;
356    background: radial-gradient(circle at 30% 30%, #ffffff, #eef2ff 55%, #e5e7eb);
357    border: 1px solid #eef2f7;
358    display: grid;
359    place-items: center;
360    overflow: hidden;
361  }
362
363  .avatar .img {
364    width: 56px;
365    height: 56px;
366  }
367
368  .status-dot {
369    position: absolute;
370    right: 10px;
371    bottom: 10px;
372    width: 12px;
373    height: 12px;
374    border-radius: 999px;
375    background: var(--green);
376    border: 2px solid #ffffff;
377    box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.18);
378  }
379
380  .agent__name {
381    font-size: 16px;
382    font-weight: 600;
383    line-height: 22px;
384  }
385
386  .agent__redact {
387    display: inline-block;
388    width: 160px;
389    height: 8px;
390    border-radius: 999px;
391    background: #ef4444;
392    opacity: 0.9;
393    transform: translateY(3px);
394  }
395
396  .qr-card {
397    margin: 16px auto 0;
398    width: min(320px, 100%);
399    background: #f8fafc;
400    border: 1px solid #e9edf3;
401    border-radius: 12px;
402    padding: 18px;
403  }
404
405  .qr-frame {
406    width: 100%;
407    aspect-ratio: 1 / 1;
408    border-radius: 12px;
409    background: #ffffff;
410    border: 1px solid #e9edf3;
411    display: grid;
412    place-items: center;
413    padding: 0px;
414  }
415
416  .qr {
417    width: 100%;
418    height: 100%;
419    border-radius: 8px;
420    display: grid;
421    place-items: center;
422    background: #ffffff;
423  }
424
425  .qr__inner {
426    width: 90%;
427    height: 90%;
428    border-radius: 6px;
429    position: relative;
430    overflow: hidden;
431  }
432  .qr__inner .img {
433    width: 252px;
434    height: 252px;
435    object-fit: cover;
436  }
437
438  .tip {
439    margin-top: 14px;
440    text-align: center;
441    font-size: 13px;
442    line-height: 18px;
443    color: #4b5563;
444  }
445</style>
446<div id="customer-service-backdrop" class="modal-backdrop" style="display: none;"></div>
447<section id="customer-service" style="display: none;" class="modal">
448  <header class="modal__header">
449    <div class="modal__title">Contact</div>
450    <button class="modal__close" type="button" aria-label="关闭">
451      <svg width="18" height="18" viewBox="0 0 20 20" fill="none" aria-hidden="true">
452        <path
453          d="M5 5L15 15M15 5L5 15"
454          stroke="currentColor"
455          stroke-width="2"
456          stroke-linecap="round"
457        />
458      </svg>
459    </button>
460  </header>
461
462  <div class="modal__body">
463    <div class="agent">
464      <div class="avatar" aria-hidden="true">
465        <img class="img" src="./public/static/footer/avatar.png" alt="客服头像" />
466        <span class="status-dot"></span>
467      </div>
468
469      <div class="agent__name">Contact us</div>
470    </div>
471
472    <div class="qr-card">
473      <div class="qr-frame">
474        <div class="qr" aria-label="二维码占位">
475          <div class="qr__inner">
476            <img class="img" src="./public/static/assets/images/qrCode.png" alt="客服二维码" />
477          </div>
478        </div>
479      </div>
480    </div>
481
482    <div class="tip">Scan the QR code for instant support via WeChat</div>
483  </div>
484</section>
485<footer class="border-t border-slate-100 bg-white py-12">
486  <div class="copyright-div">
487    <div class="max-w-7xl px-6 text-left text-xs text-slate-400">© 2026 OCRM. All rights reserved.</div>
488    <style>
489      .copyright-div {
490          box-sizing: border-box;
491          display: flex;
492          align-items: center;
493          flex-direction: row;
494          height: 76px;
495          width: 1200px;
496          padding: 10px 40px;
497          margin: 0 auto;
498      }
499      .language-container {
500        margin-left: auto;
501      }
502  
503      .language-wrapper {
504        position: relative;
505        display: inline-block;
506      }
507  
508      /* 按钮美化 - 更纤细的边框和柔和的颜色 */
509      .language-btn {
510        display: flex;
511        align-items: center;
512        gap: 10px;
513        padding: 5px 12px;
514        border: 1px solid #2b3036;
515        border-radius: 4px;
516        background-color: #2b3036;
517        color: #fff;
518        font-size: 14px;
519        cursor: pointer;
520        transition: all 0.2s ease;
521        font-weight: bold;
522      }
523  
524      /* 下拉框美化 - 更精致的卡片效果 */
525      .language-dropdown {
526        position: absolute;
527        right: 0;
528        bottom: 100%;
529        margin-bottom: 4px;
530        width: 120px;
531        border: 1px solid #e5e6eb;
532        border-radius: 4px;
533        background-color: #fff;
534        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
535        transition: all 0.2s ease-in-out;
536        z-index: 999;
537        padding: 8px 0;
538        /* 初始状态 - 透明且下移 */
539        opacity: 0;
540        transform: translateY(5px);
541        pointer-events: none; /* 隐藏时不响应点击 */
542        transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); /* 缓动曲线更自然 */
543      }
544
545      /* 显示状态 */
546      .language-dropdown.show {
547        opacity: 1;
548        transform: translateY(0);
549        pointer-events: auto; /* 显示时响应点击 */
550      }
551  
552      /* 选项样式优化 */
553      .language-option {
554        display: block;
555        padding: 4px 8px;
556        margin: 4px 4px 0 4px;
557        height: 28px;
558        color: #1f2329;
559        font-size: 14px;
560        text-decoration: none;
561        transition: all 0.15s ease; /* 背景和颜色过渡 */
562        box-sizing: border-box;
563      }
564
565      .language-option:hover {
566        background-color: #edeeee;
567        color: #1f2329;
568      }
569  
570      /* 箭头动画优化 */
571      .arrow-rotate {
572        transform: rotate(180deg);
573        transition: transform 0.2s ease;
574      }
575  
576      /* 移除Layui默认样式干扰 */
577      .layui-hide {
578        display: none !important;
579      }
580    </style>
581    <div style="display: none;" class="language-container">
582      <div class="language-wrapper">
583        <button id="languageBtn" class="language-btn">
584          <img style="width: 17px;height: 17px;" src="/en/public/static/footer/assets/language.png" alt="">
585          <span id="currentLang">中文(简体)</span>
586          <i class="layui-icon layui-icon-down" style="font-size: 12px; transition: transform 0.2s ease;line-height: 1;"></i>
587        </button>
588  
589        <!-- 美化后的下拉列表 -->
590        <div id="languageDropdown" class="language-dropdown layui-hide">
591          <a href="javascript:;" class="language-option active" data-lang="English" data-value="2">English</a>
592          <a href="javascript:;" class="language-option" data-lang="中文(简体)" data-value="1">中文(简体)</a>
593        </div>
594      </div>
595    </div>
596
597    
597<script>
598      const languageBtn = document.getElementById('languageBtn');
599      const languageDropdown = document.getElementById('languageDropdown');
600      const currentLang = document.getElementById('currentLang');
601      const languageOptions = document.querySelectorAll('.language-option');
602      const arrowIcon = languageBtn.querySelector('.layui-icon');
603  
604      // 切换下拉框
605      languageBtn.addEventListener('click', (e) => {
606        e.stopPropagation();
607        const isHidden = languageDropdown.classList.contains('layui-hide');
608  
609        if (isHidden) {
610          languageDropdown.classList.remove('layui-hide');
611          // 强制重绘后添加动画类,确保过渡效果生效
612          setTimeout(() => {
613            languageDropdown.classList.add('show');
614          }, 10);
615          arrowIcon.classList.add('arrow-rotate');
616        } else {
617          // 隐藏下拉框 - 先移除动画类,完成后添加隐藏类
618          languageDropdown.classList.remove('show');
619          arrowIcon.classList.remove('arrow-rotate');
620          setTimeout(() => {
621            languageDropdown.classList.add('layui-hide');
622          }, 200); // 与CSS过渡时间一致
623        }
624      });
625  
626      // 选择语言(增加选中状态高亮)
627      languageOptions.forEach(option => {
628        option.addEventListener('click', (e) => {
629          e.stopPropagation();
630          const selectedLang = e.target.getAttribute('data-lang');
631          const selectedValue = e.target.getAttribute('data-value');
632  
633          // 更新选中状态
634          languageOptions.forEach(opt => opt.classList.remove('active'));
635          e.target.classList.add('active');
636  
637          // 更新按钮文本
638          currentLang.textContent = selectedLang;
639          if (selectedValue == 1) {
640            window.location.href = "https://www.ocrm.ai";
641          }
642          if (selectedValue == 2) {
643            window.location.href = "https://www.ocrm.ai/en/";
644          }
645          console.log(`切换语言至:${selectedLang}`);
646  
647          // 关闭下拉框
648          languageDropdown.classList.add('layui-hide');
649          arrowIcon.classList.remove('arrow-rotate');
650        });
651      });
652  
653      // 点击外部关闭
654      document.addEventListener('click', () => {
655        if (!languageDropdown.classList.contains('layui-hide')) {
656          languageDropdown.classList.add('layui-hide');
657          arrowIcon.classList.remove('arrow-rotate');
658        }
659      });
660  
661      languageDropdown.addEventListener('click', (e) => {
662        e.stopPropagation();
663      });
664    </script>
664
665  </div>
666    
667  </footer>
668    
668<script>
669  var height = document.body.clientHeight * 0.7;
670  var width = document.body.clientWidth * 0.5;
671  height = height < 595 ? 595 : height;
672  // width = 840;
673  // height = 684;
674  width = 440;
675  height = 640;
676  $("#wukong_qiao, .wukong_qiao").click(function() {
677    $("#customer-service-backdrop").fadeIn(120);
678    $("#customer-service").fadeIn(120);
679    // Prevent layout shift when scrollbar disappears
680    const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;
681    const $body = $("body");
682    if ($body.data("cs_prev_padding_right") === undefined) {
683      $body.data("cs_prev_padding_right", $body[0].style.paddingRight || "");
684    }
685    $body.css({
686      overflow: "hidden",
687      paddingRight: scrollbarWidth > 0 ? `${scrollbarWidth}px` : $body.data("cs_prev_padding_right"),
688    });
689  })
690
691  function closeCustomerService() {
692    $("#customer-service").fadeOut(120);
693    $("#customer-service-backdrop").fadeOut(120);
694    const $body = $("body");
695    $body.css({
696      overflow: "",
697      paddingRight: $body.data("cs_prev_padding_right") ?? "",
698    });
699  }
700
701  $("#customer-service-backdrop").on("click", closeCustomerService);
702  $("#customer-service .modal__close").on("click", closeCustomerService);
703  $("#customer-service").on("click", function(e) {
704    e.stopPropagation();
705  });
706  $(document).on("keydown", function(e) {
707    if (e.key === "Escape") closeCustomerService();
708  });
709  $(".wukong_ai").click(function() {
710    window.open('https://crm.wukong.org/#/login?type=register', '_blank');
711  })
712  </script>
712
713  
713<script>
714var _hmt = _hmt || [];
715(function() {
716  var hm = document.createElement("script");
717  hm.src = "https://hm.baidu.com/hm.js?c3aeb7b2d02b7a9ca01626fd66406bcd";
718  var s = document.getElementsByTagName("script")[0]; 
719  s.parentNode.insertBefore(hm, s);
720})();
721</script>
721
722</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.