feat: 全站20个模板添加国际化(i18n)支持 - 简体中文/繁体中文/英文三语切换

- 所有18套前端模板 + 管理后台共20个HTML文件添加i18n引擎
- 前端JavaScript方案:I18N_LOCALES翻译字典 + data-i18n属性 + t()函数调用
- 语言切换器UI:下拉菜单选择,匹配各模板主题风格
- 语言持久化:localStorage存储 + URL参数覆盖 + 浏览器语言自动检测
- onLangChange回调:语言切换时动态重新渲染所有内容
- 支持语言:zh-CN(简体中文) / zh-TW(繁体中文) / en(English)
This commit is contained in:
2026-09-09 16:58:40 +08:00
parent 69c59f4fbd
commit a84129330e
20 changed files with 9343 additions and 3855 deletions

View File

@@ -132,6 +132,34 @@ section{position:relative}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
/* ============ 语言切换器 ============ */
.lang-switcher{position:relative;margin-left:8px}
.lang-btn{
display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:2px;
font-size:13px;font-weight:600;color:var(--text);cursor:pointer;
background:var(--white);border:1px solid var(--border);
transition:all .25s var(--ease);font-family:var(--sans);
}
.lang-btn:hover{color:var(--primary);border-color:var(--gold)}
.lang-btn svg{width:16px;height:16px}
.lang-dropdown{
position:absolute;top:calc(100% + 8px);right:0;min-width:160px;
background:var(--white);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
border:1px solid var(--border);border-radius:2px;
box-shadow:0 12px 40px rgba(0,0,0,.1);overflow:hidden;
opacity:0;transform:translateY(-8px);pointer-events:none;
transition:all .25s var(--ease);z-index:1001;
}
.lang-dropdown.open{opacity:1;transform:none;pointer-events:auto}
.lang-option{
display:flex;align-items:center;gap:10px;padding:12px 16px;
font-size:14px;color:var(--gray);cursor:pointer;transition:all .2s;
}
.lang-option:hover{background:var(--cream-deep);color:var(--primary)}
.lang-option.active{color:var(--primary);font-weight:600}
.lang-option .check{width:16px;height:16px;opacity:0;transition:opacity .2s}
.lang-option.active .check{opacity:1}
/* ============ Hero ============ */
.hero{padding:170px 0 110px;position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
@@ -398,6 +426,8 @@ section{position:relative}
.phil-block h3{font-size:26px}
.contact-grid{grid-template-columns:1fr;gap:50px}
.modal{padding:44px 28px}
.lang-switcher{position:static;margin-left:0}
.lang-dropdown{right:auto;left:0}
}
@media(max-width:520px){
.wrap{padding:0 22px}
@@ -415,22 +445,43 @@ section{position:relative}
<!-- 加载层 -->
<div id="loader">
<div class="loader-mark" id="loaderMark">翠恒咨询</div>
<div class="loader-mark" id="loaderMark" data-i18n="loader_mark">翠恒咨询</div>
<div class="loader-bar"></div>
</div>
<!-- 导航栏 -->
<nav class="nav" id="nav">
<div class="nav-inner">
<a href="#home" class="logo"><span class="logo-dot"></span><span id="navLogo">翠恒咨询</span></a>
<a href="#home" class="logo"><span class="logo-dot"></span><span id="navLogo" data-i18n="nav_logo">翠恒咨询</span></a>
<ul class="menu" id="menu">
<li><a href="#home" class="active">首页</a></li>
<li><a href="#services">服务</a></li>
<li><a href="#insights">洞察</a></li>
<li><a href="#team">团队</a></li>
<li><a href="#contact">联系</a></li>
<li><a href="#home" class="active" data-i18n="nav_home">首页</a></li>
<li><a href="#services" data-i18n="nav_services">服务</a></li>
<li><a href="#insights" data-i18n="nav_insights">洞察</a></li>
<li><a href="#team" data-i18n="nav_team">团队</a></li>
<li><a href="#contact" data-i18n="nav_contact">联系</a></li>
</ul>
<a href="#contact" class="nav-cta">预约咨询</a>
<a href="#contact" class="nav-cta" data-i18n="nav_cta">预约咨询</a>
<div class="lang-switcher" id="langSwitcher">
<button class="lang-btn" id="langBtn" onclick="toggleLangDropdown()">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M2 12h20M12 2a15 15 0 0 1 0 20 15 15 0 0 1 0-20z"/></svg>
<span id="langLabel">中文</span>
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="width:12px;height:12px"><polyline points="6 9 12 15 18 9"/></svg>
</button>
<div class="lang-dropdown" id="langDropdown">
<div class="lang-option" data-lang="zh-CN" onclick="switchLang('zh-CN')">
<svg class="check" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>
<span>简体中文</span>
</div>
<div class="lang-option" data-lang="zh-TW" onclick="switchLang('zh-TW')">
<svg class="check" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>
<span>繁體中文</span>
</div>
<div class="lang-option" data-lang="en" onclick="switchLang('en')">
<svg class="check" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>
<span>English</span>
</div>
</div>
</div>
<div class="burger" id="burger"><span></span><span></span><span></span></div>
</div>
</nav>
@@ -440,12 +491,12 @@ section{position:relative}
<div class="wrap">
<div class="hero-grid">
<div class="hero-text reveal">
<div class="hero-eyebrow">STRATEGIC ADVISORY</div>
<h1 id="heroSlogan">以战略之思<br><span class="accent">洞见</span>商业未来</h1>
<p class="hero-desc" id="heroDesc">我们致力于为成长型企业提供深度战略咨询,以专业洞察与严谨方法,助力组织在复杂环境中实现可持续增长。</p>
<div class="hero-eyebrow" data-i18n="hero_eyebrow">STRATEGIC ADVISORY</div>
<h1 id="heroSlogan"><span data-i18n="hero_slogan_prefix">以战略之思</span><br><span class="accent" data-i18n="hero_slogan_accent">洞见</span><span data-i18n="hero_slogan_suffix">商业未来</span></h1>
<p class="hero-desc" id="heroDesc" data-i18n="hero_desc">我们致力于为成长型企业提供深度战略咨询,以专业洞察与严谨方法,助力组织在复杂环境中实现可持续增长。</p>
<div class="hero-cta">
<a href="#services" class="btn btn-gold">探索服务 <span class="arrow">→</span></a>
<a href="#contact" class="btn btn-solid">预约咨询</a>
<a href="#services" class="btn btn-gold"><span data-i18n="hero_cta1">探索服务</span> <span class="arrow">→</span></a>
<a href="#contact" class="btn btn-solid" data-i18n="hero_cta2">预约咨询</a>
</div>
</div>
<div class="hero-art reveal d2">
@@ -470,9 +521,9 @@ section{position:relative}
<section class="sec services" id="services">
<div class="wrap">
<div class="sec-head reveal">
<span class="sec-eyebrow center">Our Services</span>
<h2 class="sec-title">核心服务</h2>
<p class="sec-sub">以体系化方法论覆盖企业发展的关键命题,为决策提供坚实支撑。</p>
<span class="sec-eyebrow center" data-i18n="services_eyebrow">Our Services</span>
<h2 class="sec-title" data-i18n="services_title">核心服务</h2>
<p class="sec-sub" data-i18n="services_sub">以体系化方法论覆盖企业发展的关键命题,为决策提供坚实支撑。</p>
</div>
<div class="svc-grid" id="svcGrid"><!-- JS render --></div>
</div>
@@ -489,9 +540,9 @@ section{position:relative}
<section class="sec insights" id="insights">
<div class="wrap">
<div class="sec-head reveal">
<span class="sec-eyebrow center">Industry Insights</span>
<h2 class="sec-title">行业洞察</h2>
<p class="sec-sub">来自一线实践的研究与观察,分享我们对商业趋势的思考。</p>
<span class="sec-eyebrow center" data-i18n="insights_eyebrow">Industry Insights</span>
<h2 class="sec-title" data-i18n="insights_title">行业洞察</h2>
<p class="sec-sub" data-i18n="insights_sub">来自一线实践的研究与观察,分享我们对商业趋势的思考。</p>
</div>
<div class="news-list" id="newsList"><!-- JS render --></div>
</div>
@@ -501,9 +552,9 @@ section{position:relative}
<section class="sec team-sec" id="team">
<div class="wrap">
<div class="sec-head reveal">
<span class="sec-eyebrow center">Our Team</span>
<h2 class="sec-title">专家团队</h2>
<p class="sec-sub">资深行业专家组合,以多元背景与深厚经验,陪伴客户走过每一个关键决策。</p>
<span class="sec-eyebrow center" data-i18n="team_eyebrow">Our Team</span>
<h2 class="sec-title" data-i18n="team_title">专家团队</h2>
<p class="sec-sub" data-i18n="team_sub">资深行业专家组合,以多元背景与深厚经验,陪伴客户走过每一个关键决策。</p>
</div>
<div class="team-grid" id="teamGrid"><!-- JS render --></div>
</div>
@@ -514,16 +565,16 @@ section{position:relative}
<div class="wrap">
<div class="phil-grid">
<div class="phil-block reveal">
<div class="phil-quote">“</div>
<div class="phil-label">Vision · 愿景</div>
<h3 id="visionText">成为最受信赖的战略伙伴,以洞见引领企业穿越周期。</h3>
<p id="visionDesc">我们相信,真正的战略价值源于对行业本质的深刻理解与对长期主义的坚守。</p>
<div class="phil-quote">"</div>
<div class="phil-label" data-i18n="phil_vision_label">Vision · 愿景</div>
<h3 id="visionText" data-i18n="phil_vision_title">成为最受信赖的战略伙伴,以洞见引领企业穿越周期。</h3>
<p id="visionDesc" data-i18n="phil_vision_desc">我们相信,真正的战略价值源于对行业本质的深刻理解与对长期主义的坚守。</p>
</div>
<div class="phil-block reveal d2">
<div class="phil-quote">“</div>
<div class="phil-label">Mission · 使命</div>
<h3 id="missionText">以专业与诚信,赋能组织实现卓越增长。</h3>
<p id="missionDesc">我们以严谨的方法论、独立的判断与高度的责任感,为每一位客户创造可衡量的价值。</p>
<div class="phil-quote">"</div>
<div class="phil-label" data-i18n="phil_mission_label">Mission · 使命</div>
<h3 id="missionText" data-i18n="phil_mission_title">以专业与诚信,赋能组织实现卓越增长。</h3>
<p id="missionDesc" data-i18n="phil_mission_desc">我们以严谨的方法论、独立的判断与高度的责任感,为每一位客户创造可衡量的价值。</p>
</div>
</div>
</div>
@@ -533,13 +584,13 @@ section{position:relative}
<section class="sec contact" id="contact">
<div class="wrap">
<div class="sec-head reveal" style="text-align:left;max-width:none;margin-bottom:60px">
<span class="sec-eyebrow" style="padding-left:44px">Contact Us</span>
<h2 class="sec-title">联系我们</h2>
<span class="sec-eyebrow" style="padding-left:44px" data-i18n="contact_eyebrow">Contact Us</span>
<h2 class="sec-title" data-i18n="contact_title">联系我们</h2>
</div>
<div class="contact-grid">
<div class="contact-intro reveal">
<h3 id="contactName">翠恒咨询</h3>
<p id="contactDesc">如有合作意向或咨询需求,欢迎通过以下方式与我们取得联系,我们的顾问将在一个工作日内与您沟通。</p>
<h3 id="contactName" data-i18n="contact_name">翠恒咨询</h3>
<p id="contactDesc" data-i18n="contact_desc">如有合作意向或咨询需求,欢迎通过以下方式与我们取得联系,我们的顾问将在一个工作日内与您沟通。</p>
</div>
<div class="contact-list reveal d2" id="contactList"><!-- JS render --></div>
</div>
@@ -551,18 +602,18 @@ section{position:relative}
<div class="wrap">
<div class="footer-top">
<div>
<div class="footer-brand" id="footerBrand">翠恒<span class="dot">·</span>咨询</div>
<p class="footer-tag" id="footerTag">战略致远 · 洞见价值</p>
<div class="footer-brand" id="footerBrand"><span data-i18n="footer_brand_name">翠恒</span><span class="dot">·</span><span data-i18n="footer_brand_suffix">咨询</span></div>
<p class="footer-tag" id="footerTag" data-i18n="footer_tag">战略致远 · 洞见价值</p>
</div>
<div class="footer-links">
<a href="#services">核心服务</a>
<a href="#insights">行业洞察</a>
<a href="#team">专家团队</a>
<a href="#contact">联系我们</a>
<a href="#services" data-i18n="footer_link_services">核心服务</a>
<a href="#insights" data-i18n="footer_link_insights">行业洞察</a>
<a href="#team" data-i18n="footer_link_team">专家团队</a>
<a href="#contact" data-i18n="footer_link_contact">联系我们</a>
</div>
</div>
<div class="footer-bottom">
<span id="footerCopy">© 2024 翠恒咨询. 保留所有权利.</span>
<span id="footerCopy" data-i18n="footer_copy">© 2024 翠恒咨询. 保留所有权利.</span>
<span id="footerWeb">www.cuiheng-consulting.com</span>
</div>
</div>
@@ -580,6 +631,219 @@ section{position:relative}
</div>
<script>
/* =========================================================
i18n 国际化引擎
========================================================= */
const I18N_LOCALES = {
'zh-CN': {
loader_mark: '翠恒咨询',
nav_logo: '翠恒咨询',
nav_home: '首页',
nav_services: '服务',
nav_insights: '洞察',
nav_team: '团队',
nav_contact: '联系',
nav_cta: '预约咨询',
hero_eyebrow: 'STRATEGIC ADVISORY',
hero_slogan_prefix: '以战略之思',
hero_slogan_accent: '洞见',
hero_slogan_suffix: '商业未来',
hero_desc: '我们致力于为成长型企业提供深度战略咨询,以专业洞察与严谨方法,助力组织在复杂环境中实现可持续增长。',
hero_cta1: '探索服务',
hero_cta2: '预约咨询',
services_eyebrow: 'Our Services',
services_title: '核心服务',
services_sub: '以体系化方法论覆盖企业发展的关键命题,为决策提供坚实支撑。',
insights_eyebrow: 'Industry Insights',
insights_title: '行业洞察',
insights_sub: '来自一线实践的研究与观察,分享我们对商业趋势的思考。',
team_eyebrow: 'Our Team',
team_title: '专家团队',
team_sub: '资深行业专家组合,以多元背景与深厚经验,陪伴客户走过每一个关键决策。',
phil_vision_label: 'Vision · 愿景',
phil_vision_title: '成为最受信赖的战略伙伴,以洞见引领企业穿越周期。',
phil_vision_desc: '我们相信,真正的战略价值源于对行业本质的深刻理解与对长期主义的坚守。',
phil_mission_label: 'Mission · 使命',
phil_mission_title: '以专业与诚信,赋能组织实现卓越增长。',
phil_mission_desc: '我们以严谨的方法论、独立的判断与高度的责任感,为每一位客户创造可衡量的价值。',
contact_eyebrow: 'Contact Us',
contact_title: '联系我们',
contact_name: '翠恒咨询',
contact_desc: '如有合作意向或咨询需求,欢迎通过以下方式与我们取得联系,我们的顾问将在一个工作日内与您沟通。',
contact_phone: '电话',
contact_email: '邮箱',
contact_address: '地址',
contact_website: '官网',
contact_founded: '创立年份',
contact_scale: '团队规模',
footer_brand_name: '翠恒',
footer_brand_suffix: '咨询',
footer_tag: '战略致远 · 洞见价值',
footer_link_services: '核心服务',
footer_link_insights: '行业洞察',
footer_link_team: '专家团队',
footer_link_contact: '联系我们',
footer_copy: '© 2024 翠恒咨询. 保留所有权利.',
news_readmore: '阅读全文',
news_cat_default: '洞察',
company_title_suffix: '高端商务咨询',
company_slogan: '战略致远 · 洞见价值'
},
'zh-TW': {
loader_mark: '翠恆諮詢',
nav_logo: '翠恆諮詢',
nav_home: '首頁',
nav_services: '服務',
nav_insights: '洞察',
nav_team: '團隊',
nav_contact: '聯繫',
nav_cta: '預約諮詢',
hero_eyebrow: 'STRATEGIC ADVISORY',
hero_slogan_prefix: '以戰略之思',
hero_slogan_accent: '洞見',
hero_slogan_suffix: '商業未來',
hero_desc: '我們致力於為成長型企業提供深度戰略諮詢,以專業洞察與嚴謹方法,助力組織在複雜環境中實現可持續增長。',
hero_cta1: '探索服務',
hero_cta2: '預約諮詢',
services_eyebrow: 'Our Services',
services_title: '核心服務',
services_sub: '以體系化方法論覆蓋企業發展的關鍵命題,為決策提供堅實支撐。',
insights_eyebrow: 'Industry Insights',
insights_title: '行業洞察',
insights_sub: '來自一線實踐的研究與觀察,分享我們對商業趨勢的思考。',
team_eyebrow: 'Our Team',
team_title: '專家團隊',
team_sub: '資深行業專家組合,以多元背景與深厚經驗,陪伴客戶走過每一個關鍵決策。',
phil_vision_label: 'Vision · 願景',
phil_vision_title: '成為最受信賴的戰略夥伴,以洞見引領企業穿越週期。',
phil_vision_desc: '我們相信,真正的戰略價值源於對行業本質的深刻理解與對長期主義的堅守。',
phil_mission_label: 'Mission · 使命',
phil_mission_title: '以專業與誠信,賦能組織實現卓越增長。',
phil_mission_desc: '我們以嚴謹的方法論、獨立的判斷與高度的責任感,為每一位客戶創造可衡量的價值。',
contact_eyebrow: 'Contact Us',
contact_title: '聯繫我們',
contact_name: '翠恆諮詢',
contact_desc: '如有合作意向或諮詢需求,歡迎通過以下方式與我們取得聯繫,我們的顧問將在一個工作日內與您溝通。',
contact_phone: '電話',
contact_email: '郵箱',
contact_address: '地址',
contact_website: '官網',
contact_founded: '創立年份',
contact_scale: '團隊規模',
footer_brand_name: '翠恆',
footer_brand_suffix: '諮詢',
footer_tag: '戰略致遠 · 洞見價值',
footer_link_services: '核心服務',
footer_link_insights: '行業洞察',
footer_link_team: '專家團隊',
footer_link_contact: '聯繫我們',
footer_copy: '© 2024 翠恆諮詢. 保留所有權利.',
news_readmore: '閱讀全文',
news_cat_default: '洞察',
company_title_suffix: '高端商務諮詢',
company_slogan: '戰略致遠 · 洞見價值'
},
'en': {
loader_mark: 'Cuiheng Consulting',
nav_logo: 'Cuiheng Consulting',
nav_home: 'Home',
nav_services: 'Services',
nav_insights: 'Insights',
nav_team: 'Team',
nav_contact: 'Contact',
nav_cta: 'Book Consultation',
hero_eyebrow: 'STRATEGIC ADVISORY',
hero_slogan_prefix: 'Strategic Thinking,',
hero_slogan_accent: 'Insightful',
hero_slogan_suffix: 'Future',
hero_desc: 'We are committed to providing deep strategic consulting for growth-oriented enterprises, leveraging professional insight and rigorous methodology to help organizations achieve sustainable growth in complex environments.',
hero_cta1: 'Explore Services',
hero_cta2: 'Book Consultation',
services_eyebrow: 'Our Services',
services_title: 'Core Services',
services_sub: 'A systematic methodology covering key propositions of enterprise development, providing solid support for decision-making.',
insights_eyebrow: 'Industry Insights',
insights_title: 'Industry Insights',
insights_sub: 'Research and observations from frontline practice, sharing our thoughts on business trends.',
team_eyebrow: 'Our Team',
team_title: 'Expert Team',
team_sub: 'A combination of senior industry experts with diverse backgrounds and deep experience, accompanying clients through every critical decision.',
phil_vision_label: 'Vision',
phil_vision_title: 'To become the most trusted strategic partner, guiding enterprises through cycles with insight.',
phil_vision_desc: 'We believe that true strategic value stems from a deep understanding of industry fundamentals and a commitment to long-termism.',
phil_mission_label: 'Mission',
phil_mission_title: 'Empowering organizations to achieve excellence through professionalism and integrity.',
phil_mission_desc: 'We create measurable value for every client through rigorous methodology, independent judgment, and a high sense of responsibility.',
contact_eyebrow: 'Contact Us',
contact_title: 'Contact Us',
contact_name: 'Cuiheng Consulting',
contact_desc: 'If you have cooperation intentions or consulting needs, please feel free to contact us through the following methods. Our consultants will communicate with you within one business day.',
contact_phone: 'Phone',
contact_email: 'Email',
contact_address: 'Address',
contact_website: 'Website',
contact_founded: 'Founded',
contact_scale: 'Team Size',
footer_brand_name: 'Cuiheng',
footer_brand_suffix: 'Consulting',
footer_tag: 'Strategic Vision · Insightful Value',
footer_link_services: 'Core Services',
footer_link_insights: 'Industry Insights',
footer_link_team: 'Expert Team',
footer_link_contact: 'Contact Us',
footer_copy: '© 2024 Cuiheng Consulting. All rights reserved.',
news_readmore: 'Read More',
news_cat_default: 'Insights',
company_title_suffix: 'Premium Business Consulting',
company_slogan: 'Strategic Vision · Insightful Value'
}
};
const LANG_LABELS = {'zh-CN':'中文','en':'EN','zh-TW':'繁中'};
let currentLang = (function(){
try{
var u=new URLSearchParams(location.search).get('lang');
if(u&&I18N_LOCALES[u]) return u;
}catch(e){}
try{var s=localStorage.getItem('lang');if(s&&I18N_LOCALES[s]) return s;}catch(e){}
var b=navigator.language||navigator.userLanguage||'';
if(b.startsWith('zh-TW')||b.startsWith('zh-Hant')) return 'zh-TW';
if(b.startsWith('zh')) return 'zh-CN';
return 'en';
})();
function t(key){return (I18N_LOCALES[currentLang]&&I18N_LOCALES[currentLang][key])||(I18N_LOCALES['zh-CN'][key])||key;}
function applyI18n(){
document.querySelectorAll('[data-i18n]').forEach(function(el){
var key=el.getAttribute('data-i18n');
el.textContent=t(key);
});
document.documentElement.lang=currentLang==='zh-TW'?'zh-TW':currentLang==='zh-CN'?'zh-CN':'en';
document.getElementById('langLabel').textContent=LANG_LABELS[currentLang]||currentLang;
document.querySelectorAll('.lang-option').forEach(function(opt){
opt.classList.toggle('active',opt.getAttribute('data-lang')===currentLang);
});
}
function switchLang(lang){
if(!I18N_LOCALES[lang]) return;
currentLang=lang;
try{localStorage.setItem('lang',lang);}catch(e){}
applyI18n();
if(typeof onLangChange==='function') onLangChange(lang);
document.getElementById('langDropdown').classList.remove('open');
}
function toggleLangDropdown(){
document.getElementById('langDropdown').classList.toggle('open');
}
document.addEventListener('click',function(e){
var sw=document.getElementById('langSwitcher');
if(sw&&!sw.contains(e.target)) document.getElementById('langDropdown').classList.remove('open');
});
(function(){
"use strict";
@@ -612,7 +876,7 @@ section{position:relative}
news:[
{id:1,title:"穿越周期:不确定性环境下的战略韧性构建",summary:"当外部环境愈发复杂多变,企业需要的不再是单一的预测,而是一套能在波动中持续校准的战略机制。本文探讨韧性战略的核心要素。",content:"在充满不确定性的商业环境中,企业越来越意识到,传统的线性战略规划难以应对快速变化的市场。\n\n韧性战略的核心在于三个方面:第一,建立多元的业务组合与收入结构,避免对单一市场或客户的过度依赖;第二,构建敏捷的组织响应能力,使决策链条能够在变化发生时迅速调整;第三,培育长期主义的组织文化,在短期压力下仍能坚持核心价值判断。\n\n我们的实践表明,那些在周期波动中持续成长的企业,往往不是预测最准的,而是响应最快、调整最灵活的。战略的价值,正在于为这种灵活响应提供清晰的方向与边界。",category:"战略思考",author:"研究院",created_at:"2024-11-18"},
{id:2,title:"数字化转型的第二曲线:从工具应用到价值重构",summary:"许多企业的数字化仍停留在工具层面。真正的转型,是对价值创造方式的根本性重构。本文拆解三个关键转变。",content:"过去十年,企业数字化投入持续增长,但真正实现价值跃迁的案例仍是少数。问题往往不在于技术本身,而在于数字化是否触及了价值创造的本质。\n\n第一,从流程自动化走向决策智能化。把数据用于记录和汇报,与把数据用于实时决策,是截然不同的两个阶段。\n\n第二,从内部效率走向外部体验。以客户旅程为核心重新设计业务流程,而非简单地将现有流程搬到线上。\n\n第三,从技术项目走向组织变革。数字化转型的成败,最终取决于组织能否形成数据驱动的决策习惯与文化。",category:"数字转型",author:"技术观察",created_at:"2024-10-22"},
{id:3,title:"组织进化的底层逻辑:从科层制到敏捷网络",summary:"面对加速变化的市场,僵化的科层结构正成为企业发展的瓶颈。如何在不失秩序的前提下提升组织敏捷性?",content:"组织架构的本质,是信息流动与决策权力的分布方式。科层制在工业化时代提供了稳定的秩序与可控的效率,但在今天,它的代价——信息损耗与响应迟缓——正变得越来越高。\n\n敏捷组织并非完全抛弃层级,而是在保持战略主线清晰的前提下,赋予一线团队更大的自主决策空间。其关键支撑包括:清晰的战略意图与边界、可度量的目标体系、以及与之匹配的激励与赋能机制。\n\n我们观察到,成功的组织进化往往遵循“小步快跑、持续校准”的路径,而非一次性的颠覆式重组。秩序与敏捷,从来不是非此即彼的选择。",category:"组织发展",author:"管理评论",created_at:"2024-09-30"},
{id:3,title:"组织进化的底层逻辑:从科层制到敏捷网络",summary:"面对加速变化的市场,僵化的科层结构正成为企业发展的瓶颈。如何在不失秩序的前提下提升组织敏捷性?",content:"组织架构的本质,是信息流动与决策权力的分布方式。科层制在工业化时代提供了稳定的秩序与可控的效率,但在今天,它的代价——信息损耗与响应迟缓——正变得越来越高。\n\n敏捷组织并非完全抛弃层级,而是在保持战略主线清晰的前提下,赋予一线团队更大的自主决策空间。其关键支撑包括:清晰的战略意图与边界、可度量的目标体系、以及与之匹配的激励与赋能机制。\n\n我们观察到,成功的组织进化往往遵循"小步快跑、持续校准"的路径,而非一次性的颠覆式重组。秩序与敏捷,从来不是非此即彼的选择。",category:"组织发展",author:"管理评论",created_at:"2024-09-30"},
{id:4,title:"并购整合的艺术:价值创造发生在交易之后",summary:"研究显示,超过半数的并购未能实现预期价值。差异往往不在交易本身,而在投后整合的执行深度。",content:"并购的成败,真正决定于签约之后的整合阶段。许多企业将大量精力投入交易撮合与价格谈判,却低估了整合的复杂性。\n\n有效的投后整合需要把握三个平衡:战略协同与业务独立性的平衡、文化融合与保留核心人才的平衡、短期业绩与长期能力的平衡。\n\n我们建议企业在交易前就组建专门的整合团队,明确价值创造的来源与里程碑,并建立清晰的沟通机制。并购的价值,是在一砖一瓦的整合中真正落地的。",category:"资本策略",author:"并购研究院",created_at:"2024-08-15"}
],
team:[
@@ -687,6 +951,7 @@ section{position:relative}
);
grid.appendChild(card);
});
grid.querySelectorAll('.reveal').forEach(function(n){io.observe(n)});
}
/* ---- 渲染:数据成果 ---- */
@@ -707,6 +972,7 @@ section{position:relative}
);
grid.appendChild(item);
});
grid.querySelectorAll('.reveal').forEach(function(n){io.observe(n)});
}
/* ---- 渲染:行业洞察 ---- */
@@ -716,11 +982,12 @@ section{position:relative}
news.forEach(function(n,i){
var flip=(i%2===1)?"flip":"";
var grad=NEWS_GRAD[i%NEWS_GRAD.length];
var catLabel=safe(n.category||t('news_cat_default'));
var item=el(
'<article class="news-item '+flip+' reveal">'+
'<div class="news-media" style="background:'+grad+'">'+
(n.image?'<img src="'+safe(n.image)+'" alt="'+safe(n.title)+'" style="position:absolute;inset:0;width:100%;height:100%;object-fit:cover" onerror="this.remove()">':'')+
'<span class="news-cat">'+safe(n.category||"洞察")+'</span>'+
'<span class="news-cat">'+catLabel+'</span>'+
'</div>'+
'<div class="news-body">'+
'<div class="news-meta">'+
@@ -730,7 +997,7 @@ section{position:relative}
'</div>'+
'<h3>'+safe(n.title)+'</h3>'+
'<p class="news-summary">'+safe(n.summary)+'</p>'+
'<span class="news-more" data-id="'+safe(n.id)+'">阅读全文 <span class="arrow">→</span></span>'+
'<span class="news-more" data-id="'+safe(n.id)+'">'+t('news_readmore')+' <span class="arrow">→</span></span>'+
'</div>'+
'</article>'
);
@@ -742,6 +1009,7 @@ section{position:relative}
openModal(news,btn.getAttribute("data-id"));
});
});
list.querySelectorAll('.reveal').forEach(function(n){io.observe(n)});
}
/* ---- 渲染:团队 ---- */
@@ -762,6 +1030,7 @@ section{position:relative}
);
grid.appendChild(card);
});
grid.querySelectorAll('.reveal').forEach(function(n){io.observe(n)});
}
/* ---- 渲染:理念 ---- */
@@ -773,15 +1042,15 @@ section{position:relative}
/* ---- 渲染:联系 ---- */
function renderContact(company){
document.getElementById("contactName").textContent=safe(company.name);
document.getElementById("contactDesc").textContent="如有合作意向或咨询需求,欢迎通过以下方式与我们取得联系,我们的顾问将在一个工作日内与您沟通。";
document.getElementById("contactDesc").textContent=t('contact_desc');
var list=document.getElementById("contactList");
var rows=[];
if(company.phone) rows.push({k:"电话",v:company.phone,serif:true});
if(company.email) rows.push({k:"邮箱",v:company.email});
if(company.address) rows.push({k:"地址",v:company.address});
if(company.website) rows.push({k:"官网",v:company.website});
if(company.founded_year) rows.push({k:"创立年份",v:company.founded_year,serif:true});
if(company.employee_count) rows.push({k:"团队规模",v:company.employee_count,serif:true});
if(company.phone) rows.push({k:t('contact_phone'),v:company.phone,serif:true});
if(company.email) rows.push({k:t('contact_email'),v:company.email});
if(company.address) rows.push({k:t('contact_address'),v:company.address});
if(company.website) rows.push({k:t('contact_website'),v:company.website});
if(company.founded_year) rows.push({k:t('contact_founded'),v:company.founded_year,serif:true});
if(company.employee_count) rows.push({k:t('contact_scale'),v:company.employee_count,serif:true});
list.innerHTML=rows.map(function(r){
return '<div class="contact-row"><span class="ck">'+r.k+'</span><span class="cv'+(r.serif?' serif':'')+'">'+safe(r.v)+'</span></div>';
}).join("");
@@ -789,21 +1058,19 @@ section{position:relative}
/* ---- 渲染:全局品牌信息 ---- */
function renderBrand(company){
var name=safe(company.name)||"翠恒咨询";
var name=safe(company.name)||t('loader_mark');
document.getElementById("navLogo").textContent=name;
document.getElementById("loaderMark").textContent=name;
document.getElementById("footerBrand").innerHTML=name+'<span class="dot">·</span>咨询';
document.getElementById("footerTag").textContent=safe(company.slogan)||"战略致远 · 洞见价值";
document.getElementById("footerCopy").textContent="© "+new Date().getFullYear()+" "+name+". 保留所有权利.";
document.getElementById("footerBrand").innerHTML='<span data-i18n="footer_brand_name">'+t('footer_brand_name')+'</span><span class="dot">·</span><span data-i18n="footer_brand_suffix">'+t('footer_brand_suffix')+'</span>';
document.getElementById("footerTag").textContent=safe(company.slogan)||t('company_slogan');
document.getElementById("footerCopy").textContent="© "+new Date().getFullYear()+" "+name+". "+t('footer_copy').replace(/^© \d{4} [^.]+\.\s*/,'');
document.getElementById("footerWeb").textContent=safe(company.website)||"";
if(company.slogan){
var slogan=company.slogan;
/* 把 slogan 中"洞见"类词做强调 */
document.getElementById("heroSlogan").innerHTML=slogan.replace(/(洞见|战略|价值)/g,'<span class="accent">$1</span>');
}
if(company.description) document.getElementById("heroDesc").textContent=company.description;
document.title=name+" | 高端商务咨询";
/* 企业 Logo 图片注入 */
document.title=name+" | "+t('company_title_suffix');
if(company.logo){
var logoDot=document.querySelector('.logo-dot');
if(logoDot){
@@ -820,7 +1087,7 @@ section{position:relative}
var n=null;
for(var i=0;i<news.length;i++){if(String(news[i].id)===String(id)){n=news[i];break}}
if(!n) return;
document.getElementById("modalCat").textContent=safe(n.category||"洞察");
document.getElementById("modalCat").textContent=safe(n.category||t('news_cat_default'));
document.getElementById("modalTitle").textContent=safe(n.title);
document.getElementById("modalMeta").textContent=fmtDate(n.created_at)+" · "+safe(n.author||"");
document.getElementById("modalContent").textContent=safe(n.content);
@@ -878,7 +1145,6 @@ section{position:relative}
window.addEventListener("scroll",function(){
if(window.scrollY>30){nav.classList.add("scrolled")}else{nav.classList.remove("scrolled")}
/* 高亮当前锚点 */
var cur="home";
var pos=window.scrollY+120;
sections.forEach(function(s){if(s && s.offsetTop<=pos){cur=s.id}});
@@ -946,12 +1212,35 @@ section{position:relative}
});
}
/* ---- 语言切换回调:重新渲染动态内容 ---- */
var lastData={};
window.onLangChange=function(){
applyI18n();
if(lastData.company){
renderBrand(lastData.company);
renderServices(lastData.services||[]);
renderStats(parseJSON(lastData.company.stats,[]));
renderNews(lastData.news||[]);
renderTeam(lastData.team||[]);
renderPhilosophy(lastData.company);
renderContact(lastData.company);
}
};
/* ---- 启动 ---- */
document.addEventListener("DOMContentLoaded",function(){
applyI18n();
initNav();
initModal();
loadData();
});
/* 拦截 loadData 保存数据引用 */
var origApplyData=applyData;
applyData=function(data){
lastData=data;
origApplyData(data);
};
})();
</script>
</body>