移动端首页

This commit is contained in:
2026-07-06 21:34:40 +08:00
parent 78bf7fbebc
commit 73f5bde68f
13 changed files with 913 additions and 24 deletions
+2 -12
View File
@@ -493,6 +493,7 @@ import IndustrySelector from '@/components/tools/IndustrySelector.vue'
import RegionSelector from '@/components/tools/RegionSelector.vue'
import JobCategorySelector from '@/components/tools/JobCategorySelector.vue'
import AgreementPreviewDialog from '@/components/tools/AgreementPreviewDialog.vue'
import { getDailyJobCount } from '@/utils/dailyJobCount'
/** 路由实例 */
const router = useRouter()
@@ -502,18 +503,7 @@ const store = useStore()
/** 页面是否已向下滚动超过 20px — 用于导航栏背景切换 */
const isScrolled = ref(false)
/** 根据当前日期生成 3000~4000 之间的确定性岗位数量(同一天所有用户看到的数字一致 */
function getDailyJobCount(): number {
const today = new Date()
const seed = today.getFullYear() * 10000 + (today.getMonth() + 1) * 100 + today.getDate()
let hash = seed
hash = ((hash >> 16) ^ hash) * 0x45d9f3b
hash = ((hash >> 16) ^ hash) * 0x45d9f3b
hash = (hash >> 16) ^ hash
return 3000 + (Math.abs(hash) % 1001)
}
/** 今日更新岗位数量 — 每日确定性变化 */
/** 今日更新岗位数量 — 每日确定性变化(使用公共哈希工具 */
const dailyJobCount = getDailyJobCount()
/** 当前展开的 FAQ 索引,-1 表示全部收起 */
+198
View File
@@ -0,0 +1,198 @@
<template>
<!-- 移动端首页 -->
<div class="home-mobile">
<!-- 背景装饰色块 -->
<div class="home-mobile__orb home-mobile__orb--top"></div>
<div class="home-mobile__orb home-mobile__orb--hero"></div>
<!-- 顶部 Logo -->
<header class="home-mobile__header">
<img src="@/assets/images/logo.png" alt="Offer派" class="home-mobile__logo" />
</header>
<!-- Hero 区域 -->
<section class="home-mobile__hero">
<p class="home-mobile__eyebrow">大学生AI求职平台</p>
<h1 class="home-mobile__headline">一站式求职辅助</h1>
<p class="home-mobile__subtitle">
"大海捞针"式求职说再见<br/>
Offer派用AI技术为你精准匹配岗位自动投递量身定制简历<br/>
让每一步都更快更准
</p>
</section>
<!-- 指令卡片 -->
<section class="home-mobile__command-card">
<p class="home-mobile__command-title">Offer 派工作模式</p>
<p class="home-mobile__command-sub">网投正在进行中...</p>
<div class="home-mobile__progress">
<div class="home-mobile__progress-rail">
<div class="home-mobile__progress-fill"></div>
</div>
</div>
<p class="home-mobile__command-chips">网投成功 32 · 投递中 5 · 已完成 82%</p>
</section>
<!-- 数据统计卡片 -->
<section class="home-mobile__stats-card">
<div class="home-mobile__stat">
<span class="home-mobile__stat-num">40+</span>
<span class="home-mobile__stat-label">岗位总数</span>
</div>
<div class="home-mobile__stat">
<span class="home-mobile__stat-num">{{ dailyJobCount }}</span>
<span class="home-mobile__stat-label">今日更新</span>
</div>
<div class="home-mobile__stat">
<span class="home-mobile__stat-num">82%</span>
<span class="home-mobile__stat-label">节省时间</span>
</div>
</section>
<!-- 功能介绍区 -->
<section class="home-mobile__functions">
<h2 class="home-mobile__section-title">Offer派能帮你做什么</h2>
<p class="home-mobile__section-sub">AI驱动的一站式求职解决方案</p>
<!-- 功能卡片列表 -->
<div class="home-mobile__feature-list">
<div class="home-mobile__feature-card" v-for="(feat, i) in features" :key="i">
<div class="home-mobile__feature-icon" :style="{ background: feat.iconBg }">
<span>{{ feat.icon }}</span>
</div>
<div class="home-mobile__feature-text">
<h3>{{ feat.title }}</h3>
<p>{{ feat.desc }}</p>
</div>
</div>
</div>
</section>
<!-- 每天都有新机会 -->
<section class="home-mobile__jobs-section">
<h2 class="home-mobile__section-title">每天都有新机会</h2>
<p class="home-mobile__section-sub">实时汇集海量优质校招职位</p>
<div class="home-mobile__job-chips">
<div class="home-mobile__job-chip home-mobile__job-chip--dark">
<span class="home-mobile__job-chip-company">字节跳动 · 15分钟前</span>
<span class="home-mobile__job-chip-role">高级产品经理</span>
</div>
<div class="home-mobile__job-chip-row">
<div class="home-mobile__job-chip home-mobile__job-chip--light">
<span class="home-mobile__job-chip-company">腾讯</span>
<span class="home-mobile__job-chip-role">后端开发工程师</span>
</div>
<div class="home-mobile__job-chip home-mobile__job-chip--light">
<span class="home-mobile__job-chip-company">阿里巴巴</span>
<span class="home-mobile__job-chip-role">产品经理</span>
</div>
</div>
</div>
</section>
<!-- 万千毕业生的信赖之选 -->
<section class="home-mobile__proof">
<h2 class="home-mobile__section-title">万千毕业生的信赖之选</h2>
<div class="home-mobile__quote-card">
<p class="home-mobile__quote-text">
"真没想到校招居然可以这么轻松高效!一周就收到了3个面试邀约。"
</p>
<div class="home-mobile__quote-author">
<div class="home-mobile__quote-avatar"></div>
<div class="home-mobile__quote-info">
<span class="home-mobile__quote-name">李同学</span>
<span class="home-mobile__quote-school">西安交通大学</span>
</div>
</div>
</div>
</section>
<!-- 常见问题 -->
<section class="home-mobile__faq">
<h2 class="home-mobile__section-title">常见问题</h2>
<div class="home-mobile__faq-list">
<div
v-for="(faq, i) in faqs"
:key="i"
class="home-mobile__faq-item"
:class="{ 'home-mobile__faq-item--open': faqOpen === i }"
>
<div class="home-mobile__faq-header" @click="faqOpen = faqOpen === i ? -1 : i">
<span>{{ faq.q }}</span>
<span class="home-mobile__faq-icon">{{ faqOpen === i ? '×' : '+' }}</span>
</div>
<div v-show="faqOpen === i" class="home-mobile__faq-answer">
<p>{{ faq.a }}</p>
</div>
</div>
</div>
</section>
<!-- 底部 CTA -->
<section class="home-mobile__bottom-cta">
<h2>准备开始投递</h2>
<p>自动网申简历生成和岗位投递需要在 PC 官网完成<br/>手机端可先了解功能正式操作请用电脑访问官网</p>
<span class="home-mobile__bottom-footer">Offer派 · 大学生AI求职首选平台</span>
</section>
<!-- 固定底部按钮 -->
<div class="home-mobile__fixed-bar">
<span class="home-mobile__pc-hint">完整产品请前往电脑端</span>
<button class="home-mobile__cta-btn" @click="showDialog = true">免费使用</button>
</div>
<!-- 弹窗引导去电脑端 -->
<div v-if="showDialog" class="home-mobile__overlay" @click.self="showDialog = false">
<div class="home-mobile__dialog">
<div class="home-mobile__dialog-handle"></div>
<button class="home-mobile__dialog-close" @click="showDialog = false">×</button>
<h3>请在电脑端使用 Offer派</h3>
<p class="home-mobile__dialog-desc">
自动网申简历生成和岗位投递需要在 PC 官网完成<br/>
手机端可先了解功能正式操作请用电脑访问官网
</p>
<div class="home-mobile__dialog-url">
PC 官网www.offerpai.com.cn
</div>
<p class="home-mobile__dialog-qr-title">保存二维码扫码加入求职交流群</p>
<div class="home-mobile__dialog-qr">
<img src="@/assets/images/home/mobile-qcCode.png" alt="二维码" class="home-mobile__dialog-qr-img" />
</div>
<p class="home-mobile__dialog-qr-hint">长按保存二维码获取更多求职资料公开课</p>
<button class="home-mobile__dialog-btn" @click="showDialog = false">知道了</button>
</div>
</div>
</div>
</template>
<script setup lang="ts">
import { ref } from 'vue'
import { getDailyJobCount } from '@/utils/dailyJobCount'
/** 今日更新岗位数量 */
const dailyJobCount = getDailyJobCount()
/** 弹窗显示状态 */
const showDialog = ref(false)
/** 当前展开的 FAQ 索引 */
const faqOpen = ref(-1)
/** 功能卡片数据 */
const features = [
{ icon: '🎯', iconBg: '#4FC2C9', title: '个性化岗位匹配', desc: '基于简历精准推荐最合适的岗位' },
{ icon: '⚡', iconBg: '#12383A', title: '一键自动网申', desc: '投递一键搞定,覆盖各大网申系统' },
{ icon: '📄', iconBg: '#42A8B3', title: '岗位定制简历', desc: '根据每个岗位智能优化简历内容' },
{ icon: '🤝', iconBg: '#80D8C8', title: '名企内推人脉直通', desc: '实时获取名企最新内推信息' },
{ icon: '🤖', iconBg: '#2A8186', title: '24h AI求职助手', desc: '随时提供求职指导和面试技巧' },
]
/** 常见问题数据 — 与PC端保持一致 */
const faqs = [
{ q: '平台免费使用吗?', a: 'Offer派为所有用户免费开放3天会员权益,帮你省心省力找工作。3天后,依然可以免费使用各项功能,但有使用次数限制。如果你需要不受限制地使用所有功能,更快更高效地获得Offer,建议您升级为付费会员,让求职效率翻倍。' },
{ q: '我的信息会被分享吗?', a: 'Offer派高度重视你的隐私安全。未经你明确同意,我们绝不会将你的个人信息提供给任何第三方。你的所有数据仅用于在平台内为你提供AI智能岗位匹配、简历优化等个性化求职服务。' },
{ q: '平台的岗位来源是什么?', a: 'Offer派的岗位来自上万家企业的官方招聘网站,同时聚合了各大主流平台的最新职位——你不需要在多个网站之间来回切换,就能一站式搜罗全网高质量的工作机会。' },
{ q: '平台与其他求职平台有什么不同?', a: '不同于BOSS直聘等传统平台的"手动式"求职,Offer派如同一位经验丰富的职业导师,通过AI能力搭建智能工具,自动处理简历优化、岗位匹配、申请投递等环节,大幅度提升你的求职效率。' },
]
</script>
-3
View File
@@ -37,9 +37,6 @@
>
<td class="resume-page__td">
<div class="resume-page__name-cell">
<!-- <span class="resume-page__avatar" :style="{ background: item.avatarColor }">-->
<!-- {{ item.avatarLetter }}-->
<!-- </span>-->
<span class="resume-page__name">{{ item.name }}</span>
<span v-if="item.isDefault" class="resume-page__default-tag">默认</span>
<!-- 编辑名称岗位图标 -->