PageSourceSearch

https://cnbaosi.com/

html cnbaosi.com collected 2026-10-05 19:54:07 UTC 60,367 bytes, 1,628 lines download raw bytes

1<!DOCTYPE HTML>
2<!--
3	Escape Velocity by HTML5 UP
4	html5up.net | @ajlkn
5	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
6-->
7<html>
8
9<head>
10	<meta charset="utf-8" />
11	<title data-en="Baosi Official Website">鲍斯股份官网</title>
12	<meta name="description"
13		content="鲍斯股份——节能 让天更蓝,鲍斯股份成立于2005年,2015年在深圳交易所挂牌上市公司。总部位于蒋氏故里弥勒圣地——浙江奉化。公司主要生产压缩机、真空泵、液压泵及成套设备。">
14	<meta name="keywords"
15		content="鲍斯股份官网,宁波鲍斯能源装备股份有限公司,鲍斯螺杆空压机,鲍斯压缩机,鲍斯鼓风机,鲍斯真空,鲍斯冷媒,鲍斯机组,鲍斯产业链服务,宁波鲍斯,重庆鲍斯,江西鲍斯鲍斯bsc">
16	<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
17	<link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin />
18	<link rel="preconnect" href="https://cdn.jsdelivr.net" crossorigin />
19	<link rel="dns-prefetch" href="https://webapi.amap.com" />
20	<link rel="stylesheet" href="assets/css/main.css" />
21	<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/swiper-bundle.min.css" />
22	<!-- Font Awesome 非阻塞加载:先 preload,加载完成后切换为 stylesheet -->
23	<link rel="preload" as="style" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"
24		onload="this.onload=null;this.rel='stylesheet'" />
25	<noscript>
26		<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" />
27	</noscript>
28	
28<script defer
29		src="https://webapi.amap.com/maps?v=2.0&key=60dea990eed529293debc2f7b1d2c6a0&plugin=AMap.Scale,AMap.ToolBar"></script>
29
30	
30<script type="importmap">
31		{
32			"imports": {
33				"three": "https://cdn.jsdelivr.net/npm/[email protected]/build/three.module.js",
34				"three/addons/": "https://cdn.jsdelivr.net/npm/[email protected]/examples/jsm/"
35			}
36		}
37	</script>
37
38
39	<style>
40		:root {
41			color-scheme: light;
42			--bg: #f7f4ef;
43			--ink: #191919;
44			--muted: rgba(25, 25, 25, 0.62);
45			--accent: #cf2f25;
46			--gold: #d8b15d;
47		}
48
49		* {
50			box-sizing: border-box;
51			margin: 0;
52			padding: 0;
53		}
54
55		html,
56		body {
57			min-height: 100%;
58		}
59
60		body {
61			font-family: Arial, Helvetica, sans-serif;
62
63			color: var(--ink);
64			overflow-x: hidden;
65		}
66
67		.spacer {
68			height: 100vh;
69			display: grid;
70			place-items: center;
71			padding: 24px;
72			color: rgba(25, 25, 25, 0.34);
73			font-size: clamp(20px, 2vw, 30px);
74			letter-spacing: 0;
75			text-align: center;
76		}
77
78		.scroll-animate {
79			opacity: 0;
80			transform: translateY(60px);
81			transition: all 1.0s cubic-bezier(0.4, 0, 0.2, 1);
82		}
83
84		.scroll-link2 {
85			margin-top: 1.5em;
86			font-weight: 700;
87			margin-left: auto;
88		}
89
90		.scroll-link {
91			display: inline-block;
92			color: #4e6fb2;
93			text-decoration: none;
94			transition: color 0.3s ease;
95		}
96
97		.scroll-link:hover {
98			color: #2d4a8a;
99		}
100
101		.scroll-animate.animated {
102			opacity: 1;
103			transform: translateY(0);
104		}
105
106		.scroll-animate-left {
107			opacity: 0;
108			transform: translateX(-60px);
109			transition: all 1.0s cubic-bezier(0.4, 0, 0.2, 1);
110		}
111
112		.scroll-animate-left.animated {
113			opacity: 1;
114			transform: translateX(0);
115		}
116
117		.scroll-animate-right {
118			opacity: 0;
119			transform: translateX(60px);
120			transition: all 1.0s cubic-bezier(0.4, 0, 0.2, 1);
121		}
122
123		.scroll-animate-right.animated {
124			opacity: 1;
125			transform: translateX(0);
126		}
127
128		/* .info-label{
129			color: #3a5faa;
130		}
131		.info-label:hover{
132			color: #ffffff;
133		} */
134
135		@media screen and (max-width: 736px) {
136
137			.scroll-animate,
138			.scroll-animate-left,
139			.scroll-animate-right,
140			.scroll-animate-scale,
141			.scroll-animate-shake {
142				opacity: 1;
143				transform: none;
144				transition: none;
145			}
146		}
147
148		.scroll-animate-scale {
149			opacity: 0;
150			transform: scale(0.85);
151			transition: all 1.0s cubic-bezier(0.4, 0, 0.2, 1);
152		}
153
154		.scroll-animate-scale.animated {
155			opacity: 1;
156			transform: scale(1);
157		}
158
159		@keyframes shakeIn {
160			0% {
161				opacity: 0;
162				transform: translateY(40px);
163			}
164
165			40% {
166				opacity: 1;
167				transform: translateY(-5px);
168			}
169
170			50% {
171				transform: translateY(3px);
172			}
173
174			60% {
175				transform: translateY(-2px);
176			}
177
178			70% {
179				transform: translateY(1px);
180			}
181
182			80% {
183				transform: translateY(-1px);
184			}
185
186			100% {
187				opacity: 1;
188				transform: translateY(0);
189			}
190		}
191
192		.scroll-animate-shake {
193			opacity: 0;
194			animation: none;
195		}
196
197		.scroll-animate-shake.animated {
198			animation: shakeIn 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
199		}
200
201		.scroll-animate-shake.scroll-animate-delay-1 {
202			animation-delay: 0.1s;
203		}
204
205		.scroll-animate-shake.scroll-animate-delay-2 {
206			animation-delay: 0.2s;
207		}
208
209		.scroll-animate-shake.scroll-animate-delay-3 {
210			animation-delay: 0.3s;
211		}
212
213		.scroll-animate-shake.scroll-animate-delay-4 {
214			animation-delay: 0.4s;
215		}
216
217		.scroll-animate-shake.scroll-animate-delay-5 {
218			animation-delay: 0.5s;
219		}
220
221		.scroll-animate-shake.animated.showcase-play-btn {
222			animation: shakeIn 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards, pulse 2s ease-in-out 0.8s infinite;
223		}
224
225		.scroll-animate-delay-1 {
226			transition-delay: 0.1s;
227		}
228
229		.scroll-animate-delay-2 {
230			transition-delay: 0.2s;
231		}
232
233		.scroll-animate-delay-3 {
234			transition-delay: 0.3s;
235		}
236
237		.scroll-animate-delay-4 {
238			transition-delay: 0.4s;
239		}
240
241		.scroll-animate-delay-5 {
242			transition-delay: 0.5s;
243		}
244
245		.hero-content .hero-title-line {
246			opacity: 0;
247			transform: translateY(30px);
248		}
249	</style>
250</head>
251
252<body class="homepage is-preload">
253	<div id="page-wrapper">
254
255		<!-- Hero Banner -->
256		<section id="hero-banner" class="hero-wrapper">
257			<div class="hero-bg">
258				<div class="hero-swiper swiper">
259					<div class="swiper-wrapper">
260						<!-- <div class="swiper-slide">
261							<img class="hero-bg-image" src="images/header-top.jpg" alt="Hero Backgroun
261d">
262						</div> -->
263						<div class="swiper-slide">
264							<img class="hero-bg-image" src="images/header-top2.jpg" alt="Hero Background">
265						</div>
266					</div>
267				</div>
268				<div class="hero-gradient"></div>
269			</div>
270			<div class="hero-contents">
271				<div class="hero-text-switch">
272					<div class="hero-text-group hero-text-group-1">
273						<h2 class="hero-switch-line" data-en="Happy Manufacturing, Creating Happiness">快乐制造 制造快乐</h2>
274						<!-- <h3 class="hero-switch-line-sub">以热爱造物</h3> -->
275						<p class="hero-switch-line-desc"
276							data-en="Committed to high-quality green energy development and creating value for customers!">
277							致力于推动绿色用能高质量发展,为客户创造价值!</p>
278					</div>
279
280				</div>
281			</div>
282			<nav id="hero-nav">
283				<div class="nav-inner">
284					<div class="nav-dyh">
285						<div class="nav-left">
286							<div class="nav-logo">
287								<a href="index.html">
288									<img src="images/logo-白.png" alt="鲍斯股份"
289										class="nav-logo-img nav-logo-white nav-logo-big">
290									<img src="images/logo.png" alt="鲍斯股份"
291										class="nav-logo-img nav-logo-dark nav-logo-big">
292									<img src="images/logo_S_白.png" alt="鲍斯股份"
293										class="nav-logo-img nav-logo-white nav-logo-s">
294									<img src="images/logo_S.png" alt="鲍斯股份"
295										class="nav-logo-img nav-logo-dark nav-logo-s">
296								</a>
297							</div>
298							<div class="nav-stock">
299								<span class="stock-label" data-en="Stock Code">股票代码</span>
300								<span class="stock-code">300441</span>
301							</div>
302						</div>
303						<div class="nav-wechat nav-wechat-mobile">
304							<a href="javascript:;" class="nav-wechat-trigger" aria-label="微信二维码"><i
305									class="fab fa-weixin"></i></a>
306							<div class="nav-wechat-popup">
307								<div class="nav-wechat-item">
308									<img src="images/GZH.jpg" alt="微信公众号">
309									<span data-en="WeChat Official Account">微信公众号</span>
310								</div>
311								<div class="nav-wechat-item">
312									<img src="images/SPH.jpg" alt="视频号">
313									<span data-en="WeChat Channels">视频号</span>
314								</div>
315							</div>
316						</div>
317						<button class="nav-toggle" aria-label="Toggle navigation">
318							<span class="nav-toggle-bar"></span>
319							<span class="nav-toggle-bar"></span>
320							<span class="nav-toggle-bar"></span>
321						</button>
322					</div>
323
324					<ul class="nav-links">
325						<li><a href="index.html" target="_blank" rel="noopener noreferrer" data-en="Home">首页</a></li>
326						<li class="nav-dropdown">
327							<a href="javascript:;" data-en="Us">我们</a>
328							<ul class="nav-dropdown-menu">
329								<li><a href="/about.html" target="_blank" rel="noopener noreferrer"
330										data-en="About Us">关于我们</a></li>
331								<li>
332									<a href="InvestorRelations.html" rel="noopener noreferrer"
333										data-en="Investor Relations">投资者关系</a>
334									<!-- <ul class="nav-dropdown-menu nav-submenu">
335										<li><a target="_blank" rel="noopener noreferrer"
336												href="https://www.cninfo.com.cn/new/disclosure/stock?stockCode=300441&orgId=9900023845"
337												data-en="Announcements">公司公告</a>
338										</li>
339										<li><a href="https://www.cninfo.com.cn/new/disclosure/stock?stockCode=300441&orgId=9900023845&tab=report#periodicReports"
340												target="_blank" rel="noopener noreferrer"
341												data-en="Periodic Reports">定期报告</a>
342										</li>
343										<li><a href="stock.html" target="_blank" rel="noopener noreferrer"
344												data-en="Stock Information">股票资料</a></li>
345										<li><a target="_blank" rel="noopener noreferrer" href="tzzbh.html"
346												data-en="Investor Protection">投资者保护</a></li>
347									</ul> -->
348								</li>
349								<li><a href="#footer" class="scroll-link" data-en="Contact Us">联系我们</a></li>
350							</ul>
351						</li>
352						<li class="nav-dropdown">
353							<a href="business.html" target="_blank" rel="noopener noreferrer" data-en="Business">业务</a>
354							<ul class="nav-dropdown-menu">
355								<li><a target="_blank" rel="noopener noreferrer"
356										href="https://sjzx.baosiup.com/bsc/web/platform.html?levelcode=00010063&name="
357										data-en="Baosi Industrial Services">鲍斯工业服务</a>
358								</li>
359								<li><a target="_blank" rel="noopener noreferrer"
360										href="https://sjzx.baosiup.com/bsc/web/platform.html?levelcode=00010064&name=%E9%B2%8D%E6%96%AF%E6%B5%81%E4%BD%93%E8%AE%BE%E5%A4%87"
361										data-en="Baosi Components & Parts">鲍斯零部件</a>
362								</li>
363								<li><a target="_blank" rel="noopener noreferrer" href="https://vac.cnbaosi.com/"
364										data-en="Baosi Vacuum">鲍斯真空</a>
365								</li>
366								<li><a target="_blank" rel="noopener noreferrer"
367										href="https://sjzx.baosiup.com/bsc/business_online.html?AccountID=281&levelcode=00011326"
368										data-en="Baosi Refrigeration">鲍斯冷媒</a>
369								</li>
370								<li><a target="_blank" rel="noopener noreferrer" href="http://www.nvicks.cn/#page1"
371										data-en="Vicks Hydraulic">威克斯液压</a>
372								</li>
373								<li><a target="_blank" rel="noopener noreferrer"
374										href="https://sjzx.baosiup.com/bsc/web_en/platform.html?name=BAOSI+Fluid+Equipment+ODM/OBM&levelcode=00010086"
375										data-en="Overseas Business">海外业务</a>
376								</li>
377							</ul>
378						</li>
379						<li><a href="./news.html" target="_blank" rel="noopener noreferrer" class="scroll-link"
380								data-en="News">资讯</a></li>
381						<li class="nav-lang"><a href="javascript:;" class="lang-switch" role="button">EN</a>
382						</li>
383						<li class="nav-wechat nav-wechat-desktop">
384							<a href="javascript:;" class="nav-wechat-trigger" aria-label="微信二维码"><i
385									class="fab fa-weixin"></i></a>
386							<div class="nav-wechat-popup">
387								<div class="nav-wechat-item">
388									<img src="images/GZH.jpg" alt="微信公众号">
389									<span data-en="WeChat Official Account">微信公众号</span>
390								</div>
391								<div class="nav-wechat-item">
392									<img src="images/SPH.jpg" alt="视频号">
393									<span data-en="WeChat Channels">视频号</span>
394								</div>
395							</div>
396						</li>
397					</ul>
398				</div>
399			</nav>
400			<div class="nav-overlay"></div>
401		</section>
402
403
404		<!-- Main -->
405		<section id="main" class="wrapper style2">
406			<!-- <div class="title scroll-animate">鲍斯宣传视频</div> -->
407			<div class="container video-section">
408				<div class="video-left scroll-animate-left" id="about-promo-wrap">
409					<video id="about-promo-video" class="featured-video" poster="images/spjsfm.jpg" preload="metadata"
410						playsinline>
411						<source
412							src="http://oss.baosiup.com/%E4%BC%81%E4%B8%9A%E5%AE%A3%E4%BC%A0%E7%89%87/%E9%B2%8D%E6%96%AF%E9%84%B1%E9%98%B3%E6%B5%81%E4%BD%93%E8%A3%85%E5%A4%87%E6%99%BA%E9%80%A0%E4%BA%A7%E4%B8%9A%E5%9B%AD/%E9%B2%8D%E6%96%AF%E9%84%B1%E9%98%B3%E5%AE%A3%E4%BC%A0%E8%A7%86%E9%A2%91-0928-1080p.mp4"
413							type="video/mp4">
414					</video>
415					<button type="button" class="promo-play-btn" id="about-promo-play" aria-label="播放视频">
416						<svg width="26" height="26" viewBox="0 0 26 26" fill="#fff" stroke="#fff" stroke-width="3"
417							stroke-linejoin="round" aria-hidden="true">
418							<path d="M3 2 L24 13 L3 24 Z" />
419						</svg>
420					</button>
421				</div>
422				<div class="video-right scroll-animate-right">
423					<!-- <p class="video-desc">
423关于我们</p> -->
424					<h2 class="video-title" data-en="Baosi">鲍斯股份</h2>
425					<p class="video-desc"
426						data-en="Founded in 2005 and listed on the Shenzhen Stock Exchange in 2015. Headquartered in Fenghua, Zhejiang, the hometown of Mr. Chiang and the sacred land of Maitreya, the company mainly produces air compressors, vacuum pumps, hydraulic pumps and complete equipment.">
427						成立于2005年,2015年在深圳交易所挂牌上市。公司总部位于蒋氏故里弥勒圣地一一浙江奉化。公司主要生产压缩机、真空泵、液压泵及成套设备。<br />
428					</p>
429					<p class="video-desc"
430						data-en="Guided by the corporate culture of learning, harmony, persistence and professionalism, the company advocates the open-minded, pioneering, harmonious and joyful spirit of Maitreya culture, striving to build a company with core competitiveness and harmonious development.">
431						公司以学习、和谐、坚持、专业为企业文化的核心思想,倡导弥勒文化中的开明开拓、和谐和乐精神,致力建设一家拥有核心竞争力能和谐发展的公司。<br />
432					</p>
433					<div style="text-align: right;">
434						<a href="./about.html" class=" scroll-link scroll-link2" data-en="Learn More">了解更多</a>
435					</div>
436				</div>
437			</div>
438		</section>
439
440	</div>
441	</section>
442
443
444
445
446	<!-- 新业务模块:产业与服务(参考 weiqiaocy.com in-sec2) -->
447	<section id="solutions" class="wrapper style3 industry-service" style="padding: 0;">
448		<div class="container">
449			<div class="is-header scroll-animate">
450				<h2 class="is-title-en">Business</h2>
451				<h1 class="is-title-cn" data-en="Business"><span class="is-title-deco">—</span> 业务 <span
452						class="is-title-deco">—</span>
453				</h1>
454				<!-- <p class="is-subtitle">拼搏进取,求实创新,快速高效,勇争一流</p> -->
455			</div>
456
457			<div class="is-showcase scroll-animate scroll-animate-delay-1">
458				<!-- 图片层叠展示区 -->
459				<div class="is-stage">
460					<img src="images/工业服务商业务.jpg" class="is-stage-img active" data-index="0" alt="鲍斯工业服务">
461					<img src="images/行业工厂业务.jpg" class="is-stage-img" data-index="1" alt="鲍斯零部件">
462					<img src="images/鲍斯真空业务.jpg" class="is-stage-img" data-index="2" alt="鲍斯真空">
463					<img src="images/鲍斯冷媒业务.jpg" class="is-stage-img" data-index="3" alt="鲍斯冷媒">
464					<img src="images/威克斯业务.jpg" class="is-stage-img" data-index="4" alt="威克斯液压">
465					<img src="images/海外业务.jpg" class="is-stage-img" data-index="5" alt="海外业务">
466
467
468
469					<!-- 底部透明导航条(悬浮在图片内部) -->
470					<div class="is-tabs">
471						<a href="https://sjzx.baosiup.com/bsc/web/platform.html?levelcode=00010063&name="
472							target="_blank" class="is-tab active" data-index="0" data-tag="BAOSIINDUSTRIALSERVICE"
473							data-title="工业服务">
474							<img src="images/工业服务商业务-h.jpg" class="is-tab-img" alt="鲍斯工业服务">
475							<span class="is-tab-cn is-tab-cn-0">鲍斯工业服务</span>
476							<span class="is-tab-en">BS Industrial Services</span>
477						</a>
478						<a href="https://sjzx.baosiup.com/bsc/web/platform.html?levelcode=00010064&name=%E9%B2%8D%E6%96%AF%E6%B5%81%E4%BD%93%E8%AE%BE%E5%A4%87"
479							target="_blank" class="is-tab" data-index="1" data-tag="BSCOMPONENTS" data-title="鲍斯零部件">
480							<img src="images/行业工厂业务-h.jpg" class="is-tab-img" alt="鲍斯零部件">
481							<span class="is-tab-cn is-tab-cn-1">鲍斯零部件</span>
482							<span class="is-tab-en">BS Components & Parts</span>
483						</a>
484						<a href="https://vac.cnbaosi.com/" target="_blank" class="is-tab" data-index="2"
485							data-tag="BAOSIVACUUM" data-title="鲍斯真空">
486							<img src="images/鲍斯真空业务-h.jpg" class="is-tab-img" alt="鲍斯真空">
487							<span class="is-tab-cn is-tab-cn-2">鲍斯真空</span>
488							<span class="is-tab-en">BS Vacuum</span>
489						</a>
490						<a href="https://sjzx.baosiup.com/bsc/business_online.html?AccountID=281&levelcode=00011326"
491							target="_blank" class="is-tab" data-index="3" data-tag="BAOSIREFRIGERANT" data-title="鲍斯冷媒">
492							<img src="images/鲍斯冷媒业务-h.jpg" class="is-tab-img" alt="鲍斯冷媒">
493							<span class="is-tab-cn is-tab-cn-3">鲍斯冷媒</span>
494							<span class="is-tab-en">BS Refrigeration</span>
495						</a>
496						<a href="http://www.nvicks.cn/#page1" target="_blank" class="is-tab" data-index="4"
497							data-tag="VICKSHYDRAULIC" data-title="威克斯液压">
498							<img src="images/威克斯业务-h.jpg" class="is-tab-img" alt="威克斯液压">
499							<span class="is-tab-cn is-tab-cn-4">威克斯液压</span>
500							<span class="is-tab-en">Vicks Hydraulic</span>
501						</a>
502						<a href="https://sjzx.baosiup.com/bsc/web_en/platform.html?name=BAOSI+Fluid+Equipment+ODM/OBM&levelcode=00010086"
503							target="_blank" class="is-tab" data-index="5" data-tag="OVERSEASBUSINESS" data-title="海外业务">
504							<img src="images/海外业务-h.jpg" class="is-tab-img" alt="海外业务">
505							<span class="is-tab-cn is-tab-cn-5">海外业务</span>
506							<span class="is-tab-en">Overseas Business</span>
507						</a>
508					</div>
509				</div>
510			</div>
511		</div>
512	</section>
513
514	<!-- News Section -->
515	<section id="main" class="wrapper style2" style="background: #f3f3f3;padding: 2em 0 2em 0;">
516		<!-- <div class="title scroll-animate" style="background: #f3f3f3;">资讯</div> -->
517		<div class="is-header scroll-animate">
518			<h2 class="is-title-en">Real-time Info</h2>
519			<h1 class="is-title-cn" data-en="News"><span class="is-title-deco">—</span> 资讯 <span
520					class="is-title-deco">—</span>
521			</h1>
522			<!-- <p class="is-subtitle">公司新闻,媒体报道,行业资讯,技术动态.</p> -->
523		</div>
524
525
526		<section id="news-section" class="news-wrapper" style="background: #f3f3f3;">
527			<div class="container">
528				<div class="news-container">
529					<div class="news-left">
530						<article class="news-featured scroll-animate-left">
531							<a href="https://mp.weixin.qq.com/s/8IRAzoLrLzZ1G4eWYmP09Q?from=industrynews&color_scheme=light"
532								target="_blank" rel="noopener noreferrer" class="news-image">
533								<img src="images/news-dwj-h.jpg" alt="政策" loading="lazy" />
534							</a>
535							<h3><a href="https://mp.weixin.qq.com/s/8IRAzoLrLzZ1G4eWYmP09Q?from=industrynews&color_scheme=light"
536									target="_blank" rel="noopener noreferrer"></a>
537							</h3>
538							<p data-en="Long live our motherland! Love is the reason and answer for everything!">
539								祖国万岁丨热爱,是一切的理由和答案!</p>
540							<span class="news-date" data-en="Company News | 2026.09.30"></span>
541						</article>
542					</div>
543					<div class="news-right">
544						<div class="news-list">
545							<article class="news-item news-list-item scroll-animate scroll-animate-delay-1">
546								<span class="news-date" data-en="Policy News | 2026.07.25">政策信息 | 2026.09.28</span>
547								<h4><a href="https://mp.weixin.qq.com/s/M69MpsJLqzdNctLLCRRi3w?from=industrynews&color_scheme=light" target="_blank"
548										rel="noopener noreferrer"
549										data-en="Green Energy Use | Industrial gas use under the dual-carbon goals, combining energy conservation and waste heat recovery.">
550										绿色用能丨双碳之下的工业用气,节能与余热利用双向兼备</a>
551								</h4>
552							</article>
553							<article class="news-item news-list-item scroll-animate scroll-animate-delay-2">
554								<span class="news-date" data-en="Company News | 2026.06.18">公司新闻 | 2026.09.24</span>
555								<h4><a href="https://mp.weixin.qq.com/s/75q4OtU0K0InsV6zbBTExA?from=industrynews&color_scheme=light"
556										target="_blank" rel="noopener noreferrer"
557										data-en="Full Moon, Full Reunion | Baosi Writes a New Chapter in Blue — A Mid-Autumn Tribute to Every Fellow Traveler">
558										月圆人圆,鲍斯“蓝”图绘新篇丨中秋致敬每一位同行者</a>
559								</h4>
560							</article>
561							<article class="news-item news-list-item scroll-animate scroll-animate-delay-1">
562								<span class="news-date" data-en="Company News | 2026.06.12">
562公司新闻 | 2026.09.18</span>
563								<h4><a href="https://mp.weixin.qq.com/s/cIm5eoasGxHlsTTqCiSadA?from=industrynews&color_scheme=light"
564										target="_blank" rel="noopener noreferrer"
565										data-en="Liangshan Auto Show | Focusing on Lightweight Clean Gas Supply to Jointly Drive the Green Upgrade of the Special-Purpose Vehicle Industry">
566										梁山车展丨聚焦轻量化洁净供气,共促专汽产业绿色升级</a>
567								</h4>
568							</article>
569							<article class="news-item news-list-item scroll-animate scroll-animate-delay-1">
570								<span class="news-date" data-en="Company News | 2026.06.03">公司新闻 | 2026.09.17</span>
571								<h4><a href="https://mp.weixin.qq.com/s/o-t7e4Eq6RUahut6h_Ot5w?from=industrynews&color_scheme=light"
572										target="_blank" rel="noopener noreferrer"
573										data-en="Hardcore Strength Recognized Again! Baosi Listed Among the 2026 Top 500 Private Enterprises by Invention Patents">
574										硬核实力再获认可!鲍斯股份荣登“2026民营企业发明专利500家”榜单</a>
575								</h4>
576							</article>
577
578
579
580						</div>
581					</div>
582				</div>
583				<a href="./news.html" style="margin-left: auto;width: 100%;text-align: right;font-weight: 700;"
584					class="news-more-btn " data-en="View More">查看更多</a>
585
586			</div>
587		</section>
588	</section>
589	<!-- Main -->
590	<!-- <section id="main" class="wrapper style2">
591		<div class="container">
592			<section id="features">
593				<div class="is-header scroll-animate">
594					<h2 class="is-title-en">Investor Relations</h2>
595					<h1 class="is-title-cn" data-en="Investor Relations"><span class="is-title-deco">—</span> 投资者关系
596						<span class="is-title-deco">—</span>
597					</h1>
598				</div>
599				<div class="feature-list">
600					<div class="row">
601						<div class="col-6 col-12-medium">
602							<section class="scroll-animate scroll-animate-left scroll-animate-delay-1">
603								<h3 class="icon fa-picture-o">
604									<a rel="noopener noreferrer"
605										href="https://www.cninfo.com.cn/new/disclosure/stock?stockCode=300441&orgId=9900023845"
606										target="_blank" rel="noopener" data-en="Announcements">公司公告</a>
607								</h3>
608								<p
609									data-en="Ningbo Baosi Energy Equipment Co., Ltd. is a high-tech enterprise focused on the R&D, production and sales of core screw compressor technology, committed to providing efficient, energy-saving compressed air solutions to global customers.">
610									宁波鲍斯能源装备股份有限公司是一家专注于螺杆压缩机核心技术研发、生产及销售的高新技术企业,致力于为全球客户提供高效、节能的压缩空气解决方案。</p>
611							</section>
612						</div>
613						<div class="col-6 col-12-medium">
614							<section class="scroll-animate scroll-animate-right scroll-animate-delay-1">
615								<h3 class="icon fa-picture-o"><a href="stock.html" target="_blank"
616										data-en="Stock Information">股票资料</a></h3>
617								<p
618									data-en="Stock code: 300441, short name: Baosi. Listed on the ChiNext board of the Shenzhen Stock Exchange in 2015, the company adheres to the philosophy of technological innovation and quality first, continuously creating value for shareholders.">
619									股票代码:300441,股票简称:鲍斯股份。公司于2015年在深圳证券交易所创业板上市,秉承"技术创新、质量为本"的经营理念,持续为股东创造价值。</p>
620							</section>
621						</div>
622						<div class="col-6 col-12-medium">
623							<section class="scroll-animate scroll-animate-left scroll-animate-delay-2">
624								<h3 class="icon fa-picture-o"><a rel="noopener noreferrer"
625										href="https://www.cninfo.com.cn/new/disclosure/stock?stockCode=300441&orgId=9900023845&tab=report#periodicReports"
626										target="_blank" rel="noopener" data-en="Periodic Reports">定期报告</a></h3>
627								<p
628									data-en="The company discloses annual, semi-annual and quarterly reports in a timely manner in strict accordance with information disclosure regulations, ensuring investors fully understand its operations and financial performance.">
629									公司严格按照信息披露规定,及时发布年度报告、半年度报告、季度报告等定期报告,确保投资者能够全面了解公司经营状况
629和财务表现。</p>
630							</section>
631						</div>
632						<div class="col-6 col-12-medium">
633							<section class="scroll-animate scroll-animate-right scroll-animate-delay-2">
634								<h3 class="icon fa-picture-o"><a href="tzzbh.html" rel="noopener"
635										data-en="Investor Protection">投资者保护</a></h3>
636								<p
637									data-en="The company has established a sound corporate governance structure, including the board of directors and other bodies, to ensure scientific and standardized decision-making and safeguard the interests of all shareholders.">
638									公司建立健全了完善的公司治理结构,包括董事会等机构,确保公司决策科学、规范,维护全体股东利益。</p>
639							</section>
640						</div>
641					</div>
642				</div>
643
644			</section>
645		</div>
646	</section> -->
647
648
649
650	<!-- Footer -->
651	<section id="footer" class="wrapper">
652		<div class="is-header scroll-animate">
653			<h2 class="is-title-en">Contact Us</h2>
654			<h1 class="is-title-cn" data-en="Contact Us"><span class="is-title-deco">—</span> 联系我们 <span
655					class="is-title-deco">—</span>
656			</h1>
657		</div>
658		<!-- <div class="title scroll-animate">联系我们</div> -->
659		<div class="container">
660
661
662			<div class="contact-content">
663				<div class="contact-info scroll-animate-left">
664					<!-- <h3 class="company-name">联系我们</h3> -->
665
666					<!-- 顶部切换 Tab -->
667					<div class="contact-tabs">
668						<button class="contact-tab active" data-tab="contact">
669							<i class="fas fa-phone"></i><span data-en="Phone / Email">电话/邮箱</span>
670						</button>
671						<button class="contact-tab" data-tab="address">
672							<i class="fas fa-map-marker-alt"></i><span data-en="Address">地址</span>
673						</button>
674					</div>
675
676					<div class="info-scroll">
677						<!-- 电话/邮箱合并面板 -->
678						<div class="contact-panel active" data-panel="contact"
679							data-en='<ul class="info-list"><li class="info-item"><div class="info-content"><div class="info-label">Foreign Trade Dept. 1</div><div class="info-text"><i class="fas fa-phone contact-sub-icon"></i><br><i class="fas fa-envelope contact-sub-icon"></i></div></div></li><li class="info-item"><div class="info-content"><div class="info-label">Foreign Trade Dept. 2</div><div class="info-text"><i class="fas fa-phone contact-sub-icon"></i><br><i class="fas fa-envelope contact-sub-icon"></i></div></div></li><li class="info-item"><div class="info-content"><div class="info-label">Foreign Trade Dept. 3</div><div class="info-text"><i class="fas fa-phone contact-sub-icon"></i><br><i class="fas fa-envelope contact-sub-icon"></i></div></div></li></ul>'>
680							<ul class="info-list">
681								<li class="info-item">
682									<div class="info-content">
683										<div class="info-label" data-en="Air-end Business">主机业务</div>
684										<div class="info-text">
685											<i class="fas fa-phone contact-sub-icon"></i>400-1006-555<br>
686											<i class="fas fa-envelope contact-sub-icon"></i>[email protected]
687										</div>
688									</div>
689								</li>
690								<li class="info-item">
691									<div class="info-content">
692										<div class="info-label" data-en="Machine Business">整机业务</div>
693										<div class="info-text">
694											<i class="fas fa-phone contact-sub-icon"></i>400-8515-909<br>
695											<i class="fas fa-envelope contact-sub-icon"></i>[email protected]
696										</div>
697									</div>
698								</li>
699								<li class="info-item">
700									<div class="info-content">
701										<div class="info-label" data-en="Vacuum Business">真空业务</div>
702										<div class="info-text">
703											<i class="fas fa-phone contact-sub-icon"></i>400-8382-011<br>
704											<i class="fas fa-envelope contact-sub-icon"></i>[email protected]
705										</div>
706									</div>
707								</li>
708								<li class="info-item">
709									<div class="info-content">
710										<div class="info-label" data-en="Baosi Purification Business">鲍斯净化业务</div>
711										<div class="info-text">
712											<i class="fas fa-phone contact-sub-icon"></i>023-6855-5518<br>
713											<i class="fas fa-envelope contact-sub-icon"></i>[email protected]
714										</div>
715									</div>
716								</li>
717								<li class="info-item">
718									<div class="info-content">
719										<div class="info-label" data-en="Industry Chain Service Business">产业链服务业务</div>
720										<div class="info-text">
721											<i class="fas fa-phone contact-sub-icon"></i>400-8855-883<br>
722											<i class="fas fa-envelope contact-sub-icon"></i>[email protected]
723										</div>
724									</div>
725								</li>
726							</ul>
727						</div>
728
729						<!-- 地址面板 -->
730						<div class="contact-panel" data-panel="address">
731							<ul class="info-list">
732								<li class="info-item">
733									<div class="info-content">
734										<div class="info-label" data-en="Ningbo Base">宁波基地</div>
735										<div class="info-text"
736											data-en="No. 55 Juchao Rd., Jiangkou Sub-district, Fenghua District, Ningbo, Zhejiang<br>No. 8 Zengzhi Rd., Yuelin Sub-district, Fenghua District, Ningbo, Zhejiang<br>No. 18 Shangqiao Rd., Xiwu Sub-district, Fenghua District, Ningbo, Zhejiang">
737											浙江省宁波市奉化区江口街道聚潮路55号<br>
738											浙江省宁波市奉化区岳林街道增智路8号<br>
739											浙江省宁波市奉化区西坞街道尚桥路18号
740										</div>
741									</div>
742								</li>
743								<li class="info-item">
744									<div class="info-content">
745										<div class="info-label" data-en="Jiangxi Smart Manufacturing Base">江西智造基地</div>
746										<div class="info-text"
747											data-en="Chuangye Avenue, Poyang County, Shangrao, Jiangxi">江西省上饶市鄱阳县创业大道
748										</div>
749									</div>
750								</li>
751								<li class="info-item">
752									<div class="info-content">
753										<div class="info-label" data-en="Chongqing Base">重庆基地</div>
754										<div class="info-text"
755											data-en="No. 355 Nanhai Rd., Nanhai Avenue, Tiaodeng Town, Dadukou District, Chongqing">
756											重庆市大渡口区跳蹬镇南海大道南海路355号</div>
757									</div>
758								</li>
759							</ul>
760						</div>
761					</div>
762				</div>
763
764				<div class="map-section">
765					<div id="mapContainer"></div>
766					<div class="map-controls">
767						<button id="satelliteBtn" data-en="Satellite">卫星</button>
768						<button id="trafficBtn" data-en="Traffic">路况</button>
769					</div>
770				</div>
771			</div>
772			<div id="copyright" class="scroll-animate">
773				<ul>
774					<li data-en="&copy; 2026 Ningbo Baosi Energy Equipment Co., Ltd.">&copy; 2026 宁波鲍斯能源装备股份有限公司 </li>
775					<li><a style="text-decoration: none;" href="https://beian.miit.gov.cn/" target="_blank"
776							rel="noopener noreferrer">浙ICP备12019320号-1</a></li>
777					<li><a style="text-decoration: none;"
778							href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=33028302000616"
779							target="_blank" rel="noopener noreferrer">浙公网安备33028302000616号</a></li>
780				</ul>
781			</div>
782		</div>
783	</section>
784
785	</div>
786
787	<!-- Scripts -->
788	
788<script src="./assets/js/gsap.min.js"></script>
788
789	
789<script src="./assets/js/ScrollTrigger.min.js"></script>
789
790	
790<script src="assets/js/jquery.min.js"></script>
790
791	
791<script src="assets/js/jquery.dropotron.min.js"></script>
791
792	
792<script src="assets/js/browser.min.js"></script>
792
793	
793<script src="assets/js/breakpoints.min.js"></script>
793
794	
794<script src="assets/js/util.js"></script>
794
795	
795<script src="assets/js/main.js"></script>
795
796	
796<script src="assets/js/i18n.js"></script>
796
797	
797<script src="assets/js/swiper-bundle.min.js"></script>
797
798	
798<script>
799		document.addEventListener('DOMContentLoaded', function () {
800			if (typeof Swiper !== 'undefined' && document.querySelector('.hero-swiper')) {
801				var slideCount = document.querySelectorAll('.hero-swiper .swiper-slide').length;
802				if (slideCount > 1) {
803					new Swiper('.hero-swiper', {
804						speed: 1500,
805						loop: true,
806						effect: 'fade',
807						fadeEffect: {
808							crossFade: true,
809						},
810						autoplay: {
811							delay: 5000,
812							disableOnInteraction: false,
813						},
814					});
815				}
816			}
817		});
818	</script>
818
819	
819<script>
820		// 严谨的设备检测:判断是否为移动端
821		function isMobileDevice() {
822			// 1. 检测是否支持触摸
823			var hasTouch = ('ontouchstart' in window) || (navigator.maxTouchPoints > 0);
824
825			// 2. 检测指针精度(粗指针 = 触摸设备)
826			var coarsePointer = window.matchMedia && window.matchMedia('(pointer: coarse)').matches;
827
828			// 3. 检测移动端UA
829			var mobileUA = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Mobile|Silk/i.test(navigator.userAgent);
830
831			// 4. 屏幕宽度小于 980px
832			var smallScreen = window.innerWidth <= 980;
833
834			// 综合判断:有触摸 + 小屏幕 或 明确的移动端UA
835			return (hasTouch && smallScreen) || mobileUA;
836		}
837
838		// [TEMP-HIDE-VIDEO] 暂时只展示图片隐藏视频,恢复时改回 if(isMobileDevice()) 分支逻辑
839		function setupHeroBackground() {
840			var video = document.querySelector('.hero-video');
841			var image = document.querySelector('.hero-bg-image');
842
843			// 暂时只展示图片,隐藏视频
844			if (video) {
845				video.style.display = 'none';
846				video.pause && video.pause();
847			}
848			if (image) {
849				image.style.display = 'block';
850			}
851		}
852
853		// 立即执行
854		setupHeroBackground();
855
856		// 企业宣传视频:默认展示封面图,点击视频区域播放;播放结束后恢复封面可再次点击
857		(function () {
858			var wrap = document.getElementById('about-promo-wrap');
859			var promo = document.getElementById('about-promo-video');
860			if (!promo || !wrap) return;
861
862			function startPlay() {
863				promo.controls = true;
864				promo.muted = false;
865				var p = promo.play();
866				if (p && p.catch) {
867					p.catch(function () {
868						// 个别浏览器仍拦截有声自动播放时,降级ä¸
868ºé™éŸ³æ’­æ”¾
869						promo.muted = true;
870						promo.play();
871					});
872				}
873				wrap.classList.add('is-playing');
874			}
875
876			// 首次点击封面/视频才接管,之后交给原生控制条,避免双击冲突
877			promo.addEventListener('click', startPlay, { once: true });
878
879			// 播放结束:回到封面状态并重新允许点击播放
880			promo.addEventListener('ended', function () {
881				promo.pause();
882				promo.currentTime = 0;
883				promo.controls = false;
884				wrap.classList.remove('is-playing');
885				promo.addEventListener('click', startPlay, { once: true });
886			});
887		})();
888
889		// 窗口尺寸变化时重新检测(如桌面浏览器缩放)
890		window.addEventListener("resize", function () {
891			setupHeroBackground();
892		});
893	</script>
893
894
895	
895<script>
896		document.addEventListener('DOMContentLoaded', function () {
897			const animateElements = document.querySelectorAll('.scroll-animate, .scroll-animate-left, .scroll-animate-right, .scroll-animate-scale, .scroll-animate-shake');
898
899			const observer = new IntersectionObserver((entries) => {
900				entries.forEach(entry => {
901					if (entry.isIntersecting) {
902						entry.target.classList.add('animated');
903					}
904				});
905			}, {
906				threshold: 0.1,
907				rootMargin: '0px 0px -50px 0px'
908			});
909
910			animateElements.forEach(el => {
911				observer.observe(el);
912			});
913		});
914	</script>
914
915
916	
916<script>
917		// 产业与服务模块:底部透明导航条 hover 切换上方图片 + 自动轮播
918		document.addEventListener('DOMContentLoaded', function () {
919			var showcase = document.querySelector('.is-showcase');
920			if (!showcase) return;
921
922			var tabs = showcase.querySelectorAll('.is-tab');
923			var imgs = showcase.querySelectorAll('.is-stage-img');
924			var tagEl = showcase.querySelector('.is-stage-tag');
925			var titleEl = showcase.querySelector('.is-stage-title');
926			var total = tabs.length;
927			var currentIndex = 0;
928			var AUTO_INTERVAL = 4000; // 自动切换间隔 4 秒
929			var autoTimer = null;
930
931			// 判断是否为触屏设备(无 hover)
932			var isTouch = window.matchMedia('(hover: none)').matches || window.matchMedia('(pointer: coarse)').matches;
933
934			function switchTo(index) {
935				currentIndex = index;
936				// 切换图片 active
937				imgs.forEach(function (img) {
938					img.classList.toggle('active', Number(img.dataset.index) === index);
939				});
940				// 切换导航条 active
941				tabs.forEac
941h(function (tab) {
942					tab.classList.toggle('active', Number(tab.dataset.index) === index);
943				});
944				// 更新信息浮层
945				var activeTab = showcase.querySelector('.is-tab[data-index="' + index + '"]');
946				if (activeTab && tagEl && titleEl) {
947					tagEl.textContent = activeTab.dataset.tag;
948					titleEl.textContent = activeTab.dataset.title;
949				}
950			}
951
952			// 自动切换:切到下一张,末尾回到第一张
953			function autoNext() {
954				var next = (currentIndex + 1) % total;
955				switchTo(next);
956			}
957
958			function startAuto() {
959				stopAuto();
960				autoTimer = setInterval(autoNext, AUTO_INTERVAL);
961			}
962
963			function stopAuto() {
964				if (autoTimer) {
965					clearInterval(autoTimer);
966					autoTimer = null;
967				}
968			}
969
970			// 手动交互后重置定时器
971			function resetAuto() {
972				if (autoTimer) {
973					startAuto();
974				}
975			}
976
977			tabs.forEach(function (tab) {
978				// PC 端:mouseenter 切换图片(不跳转),click 才跳转
979				if (!isTouch) {
980					tab.addEventListener('mouseenter', function () {
981						switchTo(Number(tab.dataset.index));
982						resetAuto();
983					});
984				} else {
985					// 移动端:首次点击切换图片并阻止跳转,再次点击同项才跳转
986					tab.addEventListener('click', function (e) {
987						if (!tab.classList.contains('active')) {
988							e.preventDefault();
989							switchTo(Number(tab.dataset.index));
990							resetAuto();
991						}
992					});
993				}
994			});
995
996			// 鼠标进入展示区暂停自动切换,离开恢复
997			showcase.addEventListener('mouseenter', stopAuto);
998			showcase.addEventListener('mouseleave', startAuto);
999
1000			// 页面失焦/隐藏时暂停,可见时恢复,节省资源
1001			document.addEventListener('visibilitychange', function () {
1002				if (document.hidden) {
1003					stopAuto();
1004				} else {
1005					startAuto();
1006				}
1007			});
1008
1009			// 启动自动轮播
1010			startAuto();
1011		});
1012	</script>
1012
1013
1014	
1014<script>
1015		// 联系信息 Tab 切换
1016		document.addEventListener('DOMContentLoaded', function () {
1017			var tabs = document.querySelectorAll('.contact-tab');
1018			var panels = document.querySelectorAll('.contact-panel');
1019			if (!tabs.length || !panels.length) return;
1020
1021			tabs.forEach(function (tab) {
1022				tab.addEventListener('click', function () {
1023					var target = tab.dataset.tab;
1024					// 切换按钮高亮
1025					tabs.forEach(function (t) { t.classList.toggle('active', t === tab); });
1026					// 切换面板显示
1027					panels.forEach(function (p) { p.classList.toggle('active', p.dataset.panel === target); });
1028				});
1029			});
1030		});
1031	</script>
1031
1032
1033	
1033<script>
1034		// 业务面板触屏两段式交互 - 已注释
1035		/*
1036		document.addEventListener('DOMContentLoaded', function () {
1037			var panels = document.querySelectorAll('#highlights .biz-panel');
1038			var container = document.querySelector('#highlights .biz-panels');
1039			if (!panels.length || !container) return;
1040
1041			var isTouch = window.matchMedia('(hover: none)').matches || window.matchMedia('(pointer: coarse)').matches;
1042			if (!isTouch) return;
1043
1044			function closeAll() {
1045				panels.forEach(function (p) { p.classList.remove('is-open'); });
1046				container.classList.remove('has-open');
1047			}
1048
1049			panels.forEach(function (panel) {
1050				panel.addEventListener('click', function (e) {
1051					if (e.target.closest('.biz-panel-cta')) return;
1052					e.preventDefault();
1053					var wasOpen = panel.classList.contains('is-open');
1054					closeAll();
1055					if (!wasOpen) {
1056						panel.classList.add('is-open');
1057						container.classList.add('has-open');
1058					}
1059				});
1060			});
1061
1062			document.addEventListener('click', function (e) {
1063				if (!e.target.closest('#highlights .biz-panel')) closeAll();
1064			});
1065		});
1066		*/
1067
1068		// 新业务模块:3.5张并排 + 无缝循环 + 任意拖拽(不吸附) + 左侧hover
1069		(function () {
1070			var tabs = document.querySelectorAll('.sol-tab');
1071			var track = document.getElementById('solSliderTrack');
1072			var slider = document.getElementById('solSlider');
1073			if (!tabs.length || !track || !slider) return;
1074
1075			var origSlides = Array.prototype.slice.call(track.querySelectorAll('.sol-slide'));
1076			var total = origSlides.length;
1077			track.innerHTML = '';
1078			origSlides.forEach(function (s) { track.appendChild(s.cloneNode(true)); });
1079			origSlides.forEach(function (s) { track.appendChild(s); });
1080			origSlides.forEach(function (s) { track.appendChild(s.cloneNode(true)); });
1081
1082			var VISIBLE = 3.5;
1083			var current = total; // float, 允许小数
1084			var autoTimer = null;
1085			var AUTO_INTERVAL = 4000;
1086
1087			function slideWidth() {
1088				return slider.offsetWidth / VISIBLE;
1089			}
1090
1091			function setTransform(index, animated) {
1092				var w = slideWidth();
1093				if (animated) {
1094					track.style.transition = 'transform 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94)';
1095				} else {
1096					track.style.transition = 'none';
1097				}
1098				track.style.transform = 'translateX(' + (-index * w) + 'px)';
1099			}
1100
1101			function updateActiveTab(index) {
1102				var real = ((Math.round(index) % total) + total) % total;
1103				tabs.forEach(function (t, i) {
1104					if (i === real) t.classList.add('active');
1105					else t.classList.remove('active');
1106				});
1107			}
1108
1109			// 无缝循环:如果current在clone区,瞬间跳到对应原始位置
1110			function normalize() {
1111				if (current < total) {
1112					current += total;
1113					setTransform(current, false);
1114				} else if (current >= total * 2) {
1115					current -= total;
1116					setTransform(current, false);
1117				}
1118			}
1119
1120			// ===== 左侧 hover:无动画锁,直接切换 =====
1121			tabs.forEach(function (tab, i) {
1122				tab.addEventListener('mouseenter', function () {
1123					stopAuto();
1124					stopMomentum();
1125					var targetBase = total + i;
1126					var curInt = Math.round(current);
1127					var candidates = [targetBase, targetBase - total, targetBase + total];
1128					var best = candidates[0], bestDist = Math.abs(best - curInt);
1129					for (var k = 0; k < candidates.length; k++) {
1130						if (candidates[k] >= 0 && candidates[k] < 3 * total) {
1131							var d = Math.abs(candidates[k] - curInt);
1132							if (d < bestDist) { bestDist = d; best = candidates[k]; }
1133						}
1134					}
1135					current = best;
1136					setTransform(current, true);
1137					updateActiveTab(current);
1138				});
1139				tab.addEventListener('click', function () {
1140					stopAuto();
1141					stopMomentum();
1142					var targetBase = total + i;
1143					var curInt = Math.round(current);
1144					var candidates = [targetBase, targetBase - total, targetBase + total];
1145					var best = candidates[0], bestDist = Math.abs(best - curInt);
1146					for (var k = 0; k < candidates.length; k++) {
1147						if (candidates[k] >= 0 && candidates[k] < 3 * total) {
1148							var d = Math.abs(candidates[k] - curInt);
1149							if (d < bestDist) { bestDist = d; best = candidates[k]; }
1150						}
1151					}
1152					current = best;
1153					setTransform(current, true);
1154					updateActiveTab(current);
1155				});
1156			});
1157
1158			var tabsList = document.querySelector('.sol-tabs-list');
1159			if (tabsList) {
1160				tabsList.addEventListener('mouseleave', startAuto);
1161			}
1162
1163			// ===== 自动播放 =====
1164			function startAuto() {
1165				stopAuto();
1166				autoTimer = setInterval(function () {
1167					if (!isDragging) {
1168						current += 1;
1169						setTransform(current, true);
1170						updateActiveTab(current);
1171					}
1172				}, AUTO_INTERVAL);
1173			}
1174			function stopAuto() {
1175				if (autoTimer) { clearInterval(autoTimer); autoTimer = null; }
1176			}
1177
1178			// ===== 拖拽:完全自由 + 惯性滑动 =====
1179			var isDragging = false;
1180			var startX = 0;
1181			var startOffset = 0;
1182			var moved = false;
1183			var rafId = null;
1184			var velocity = 0; // 瞬时速度 px/ms
1185			var lastMoveTime = 0;
1186			var lastMoveX = 0;
1187			var FRICTION = 0.94; // 摩擦系数,越小停越快
1188			var MIN_VELOCITY = 0.02; // 低于此速度停止
1189			var DECEL_RATE = 0.95; // 每帧减速比例
1190
1191			function pxFromIndex(idx) {
1192				return -idx * slideWidth();
1193			}
1194			function indexFromPx(px) {
1195				return -px / slideWidth();
1196			}
1197
1198			function onDragStart(e) {
1199				if (e.target.closest('.sol-slide-cta')) return;
1200				isDragging = true;
1201				moved = false;
1202				var clientX = (e.type === 'touchstart') ? e.touches[0].clientX : e.clientX;
1203				startX = clientX;
1204				lastMoveX = clientX;
1205				lastMoveTime = performance.now();
1206				velocity = 0;
1207				startOffset = pxFromIndex(current);
1208				track.style.transition = 'none';
1209				track.classList.add('dragging');
1210				if (rafId) { cancelAnimationFrame(rafId); rafId = null; }
1211				stopAuto();
1212				stopMomentum();
1213			}
1214
1215			function onDragMove(e) {
1216				if (!isDragging) return;
1217				var clientX = (e.type === 'touchmove') ? e.touches[0].clientX : e.clientX;
1218				var dx = clientX - startX;
1219				if (Math.abs(dx) > 3) moved = true;
1220
1221				// 计算瞬时速度(用最近一段移动的时间)
1222				var now = performance.now();
1223				var dt = now - lastMoveTime;
1224				if (dt > 0) {
1225					var instantV = (clientX - lastMoveX) / dt;
1226					// 平滑速度
1227					velocity = velocity * 0.6 + instantV * 0.4;
1228				}
1229				lastMoveX = clientX;
1230				lastMoveTime = now;
1231
1232				var px = startOffset + dx;
1233				if (!rafId) {
1234					rafId = requestAnimationFrame(function () {
1235						rafId = null;
1236						track.style.transform = 'translateX(' + px + 'px)';
1237					});
1238				}
1239				if (e.type === 'touchmove') e.preventDefault();
1240			}
1241
1242			function onDragEnd(e) {
1243				if (!isDragging) return;
1244				isDragging = false;
1245				track.classList.remove('dragging');
1246				if (rafId) { cancelAnimationFrame(rafId); rafId = null; }
1247
1248				var clientX = (e.type === 'touchend' || e.type === 'touchcancel') ? e.changedTouches[0].clientX : e.clientX;
1249				var dx = clientX - startX;
1250				var finalPx = startOffset + dx;
1251
1252				// 当前位置
1253				var currentPx = finalPx;
1254
1255				// 启动惯性滑动
1256				startMomentum(currentPx, velocity);
1257			}
1258
1259			// 惯性滑动
1260			function momentumRaf(px, v) {
1261				if (Math.abs(v) < MIN_VELOCITY) {
1262					// 惯性结束,记录当前位置
1263					current = indexFromPx(px);
1264					updateActiveTab(current);
1265					// 无缝跳转
1266					var intPart = Math.round(current);
1267					if (intPart < total) {
1268						current += total;
1269						setTransform(current, false);
1270					} else if (intPart >= total * 2) {
1271						current -= total;
1272						setTransform(current, false);
1273					}
1274					startAuto();
1275					momentumRafId = null;
1276					return;
1277				}
1278				// 每帧:位置 += 速度 * dt(dt=16ms约一帧)
1279				var dt = 16;
1280				v = v * DECEL_RATE; // 减速
1281				px = px + v * dt;
1282				track.style.transition = 'none';
1283				track.style.transform = 'translateX(' + px + 'px)';
1284
1285				// 检测是否越过clone边界,无缝跳转
1286				var idx = indexFromPx(px);
1287				var intIdx = Math.round(idx);
1288				if (intIdx < total) {
1289					px -= total * slideWidth();
1290				} else if (intIdx >= total * 2) {
1291					px += total * slideWidth();
1292				}
1293
1294				momentumRafId = requestAnimationFrame(function () {
1295					momentumRaf(px, v);
1296				});
1297			}
1298
1299			var momentumRafId = null;
1300
1301			function startMomentum(startPx, v) {
1302				if (Math.abs(v) < MIN_VELOCITY) {
1303					current = indexFromPx(startPx);
1304					updateActiveTab(current);
1305					startAuto();
1306					return;
1307				}
1308				stopMomentum();
1309				momentumRafId = requestAnimationFrame(function () {
1310					momentumRaf(startPx, v);
1311				});
1312			}
1313
1314			function stopMomentum() {
1315				if (momentumRafId) {
1316					cancelAnimationFrame(momentumRafId);
1317					momentumRafId = null;
1318				}
1319			}
1320
1321			slider.addEventListener('mousedown', onDragStart);
1322			document.addEventListener('mousemove', onDragMove);
1323			document.addEventListener('mouseup', onDragEnd);
1324			slider.addEventListener('touchstart', onDragStart, { passive: true });
1325			document.addEventListener('touchmove', onDragMove, { passive: false });
1326			document.addEventListener('touchend', onDragEnd);
1327			document.addEventListener('touchcancel', onDragEnd);
1328			slider.addEventListener('dragstart', function (e) { e.preventDefault(); });
1329			slider.addEventListener('mouseenter', stopAuto);
1330			slider.addEventListener('mouseleave', startAuto);
1331
1332			// 动画结束后检查是否需要无缝跳转
1333			track.addEventListener('transitionend', function (e) {
1334				if (e.propertyName !== 'transform') return;
1335				if (isDragging) return; // 拖拽中不处理
1336				normalize();
1337			});
1338
1339			window.addEventListener('resize', function () {
1340				setTransform(current, false);
1341			});
1342
1343			setTransform(current, false);
1344			startAuto();
1345		})();
1346	</script>
1346
1347
1348	
1348<script>
1349		// 高德地图初始化
1350		function initMap() {
1351			if (!window.AMap) {
1352				setTimeout(initMap, 100);
1353				return;
1354			}
1355
1356			var map = new AMap.Map('mapContainer', {
1357				center: [121.4513, 29.6272],
1358				zoom: 13
1359			});
1360
1361			// 添加标记点
1362			var markers = [
1363				{ position: [121.4485, 29.6258], title: '西坞厂区', address: '浙江省宁波市奉化区西坞街道尚桥路18号' },
1364				{ position: [121.4623, 29.6185], title: '江口厂区', address: '浙江省宁波市奉化区江口街道聚潮路55号' },
1365				{ position: [121.4556, 29.6352], title: '新鲍厂区', address: '浙江省宁波市奉化区塔智路8号' },
1366				{ position: [116.6852, 29.0325], title: '江西厂区', address: '江西省鄱阳县芦田工业区' }
1367			];
1368
1369			markers.forEach(function (item) {
1370				var marker = new AMap.Marker({
1371					position: item.position,
1372					title: item.title,
1373					icon: new AMap.Icon({
1374						size: new AMap.Size(20, 20),
1375						image: 'https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png'
1376					})
1377				});
1378				map.add(marker);
1379
1380				var infoWindow = new AMap.InfoWindow({
1381					content: '<strong>' + item.title + '</strong><br>' + item.address
1382				});
1383
1384				marker.on('click', function () {
1385					infoWindow.open(map, marker.getPosition());
1386				});
1387			});
1388
1389			// 卫星图层
1390			var satellite = new AMap.TileLayer.Satellite();
1391			var isSatellite = false;
1392
1393			document.getElementById('satelliteBtn').onclick = function () {
1394				isSatellite = !isSatellite;
1395				if (isSatellite) {
1396					map.add(satellite);
1397					this.classList.add('active');
1398				} else {
1399					map.remove(satellite);
1400					this.classList.remove('active');
1401				}
1402			};
1403
1404			// 路况图层
1405			var traffic = new AMap.TileLayer.Traffic();
1406			var isTraffic = false;
1407
1408			document.getElementById('trafficBtn').onclick = function () {
1409				isTraffic = !isTraffic;
1410				if (isTraffic) {
1411					map.add(traffic);
1412					this.classList.add('active');
1413				} else {
1414					map.remove(traffic);
1415					this.classList.remove('active');
1416				}
1417			};
1418
1419			// 自适应视野
1420			map.setFitView();
1421
1422			// 窗口尺寸变化时重绘地图,避免响应式下地图空白
1423			window.addEventListener('resize', function () {
1424				map.resize();
1425			});
1426		}
1427
1428		// 平滑滚动到锚点
1429		document.addEventListener('DOMContentLoaded', function () {
1430			initMap();
1431
1432			// 为所有带有scroll-link类的链接添加平滑滚动
1433			var scrollLinks = document.querySelectorAll('.scroll-link');
1434			scrollLinks.forEach(function (link) {
1435				link.addEventListener('click', function (e) {
1436					var targetId = this.getAttribute('href');
1437					if (targetId.startsWith('#') && targetId.length > 1) {
1438						e.preventDefault();  // 只对锚点链接阻止默认行为
1439						var targetElement = document.querySelector(targetId);
1440						if (targetElement) {
1441							targetElement.scrollIntoView({
1442								behavior: 'smooth',
1443								block: 'start'
1444							});
1445						}
1446					}
1447				});
1448			});
1449		});
1450	</script>
1450
1451
1452	<!-- Navigation Scroll Behavior -->
1453	
1453<script>
1454		(function () {
1455			var nav = document.getElementById('hero-nav');
1456			var navToggle = document.querySelector('.nav-toggle');
1457			var navOverlay = document.querySelector('.nav-overlay');
1458			if (!nav) return;
1459
1460			var lastScrollTop = 0;
1461			var scrollThreshold = 200;
1462			var changeThreshold = 50;
1463
1464			// 切换菜单函数
1465			function toggleNavMenu(open) {
1466				if (open) {
1467					nav.classList.add('nav-open');
1468					document.body.classList.add('nav-menu-open');
1469				} else {
1470					nav.classList.remove('nav-open');
1471					document.body.classList.remove('nav-menu-open');
1472				}
1473			}
1474
1475			// 汉堡菜单点击事件
1476			if (navToggle) {
1477				navToggle.addEventListener('click', function (e) {
1478					e.preventDefault();
1479					toggleNavMenu(!nav.classList.contains('nav-open'));
1480				});
1481
1482				// 点击overlay时关闭菜单
1483				if (navOverlay) {
1484					navOverlay.addEventListener('click', function (e) {
1485						e.preventDefault();
1486						toggleNavMenu(false);
1487					});
1488				}
1489
1490				// 点击导航链接时关闭菜单(排除下拉菜单父链接)
1491				var navLinks = nav.querySelectorAll('.nav-links > li > a');
1492				navLinks.forEach(function (link) {
1493					link.addEventListener('click', function (e) {
1494						// 如果是下拉菜单的父链接,不关闭菜单
1495						if (link.closest('.nav-dropdown')) {
1496							return;
1497						}
1498						toggleNavMenu(false);
1499					});
1500				});
1501
1502				// 点击下拉菜单“叶子”链接时关闭菜单(含子菜单的父项不关闭)
1503				var dropdownLinks = nav.querySelectorAll('.nav-dropdown-menu a');
1504				dropdownLinks.forEach(function (link) {
1505					link.addEventListener('click', function () {
1506						var li = link.parentElement;
1507						if (li && li.classList.contains('nav-dropdown')) {
1508							return;
1509						}
1510						toggleNavMenu(false);
1511					});
1512				});
1513			}
1514
1515			// 下拉/子菜单点击展开收起(移动端;桌面端 hover)
1516			var dropdowns = nav.querySelectorAll('.nav-dropdown');
1517			dropdowns.forEach(function (dropdown) {
1518				var dropdownLink = dropdown.querySelector('a');
1519				if (!dropdownLink) return;
1520				dropdownLink.addEventListener('click', function (e) {
1521					if (window.innerWidth > 1050) return;
1522					e.preventDefault();
1523					var wasOpen = dropdown.classList.contains('open');
1524
1525					// 只收起同级展开项,不影响父级/子级
1526					var parent = dropdown.parentElement;
1527					if (parent) {
1528						for (var i = 0; i < parent.children.length; i++) {
1529							var sibling = parent.children[i];
1530							if (sibling !== dropdown && sibling.classList && sibling.classList.contains('nav-dropdown')) {
1531								sibling.classList.remove('open');
1532							}
1533						}
1534					}
1535
1536					if (wasOpen) {
1537						dropdown.classList.remove('open');
1538					} else {
1539						dropdown.classList.add('open');
1540					}
1541				});
1542			});
1543
1544			// 监听滚动事件
1545			window.addEventListener('scroll', function () {
1546				// 如果菜单是展开的,不处理滚动逻辑
1547				if (nav.classList.contains('nav-open')) {
1548					return;
1549				}
1550
1551				var currentScrollTop = window.pageYOffset || document.documentElement.scrollTop;
1552
1553				// 滚动后切换为白色背景、深色字体
1554				if (currentScrollTop > changeThreshold) {
1555					nav.classList.add('nav-scrolled');
1556				} else {
1557					nav.classList.remove('nav-scrolled');
1558				}
1559
1560				// 向下滚动超过阈值时隐藏导航栏(当前未启用)
1561				if (currentScrollTop > lastScrollTop && currentScrollTop > scrollThreshold) {
1562					nav.classList.add('nav-hidden');
1563				} else {
1564					nav.classList.remove('nav-hidden');
1565				}
1566
1567				lastScrollTop = currentScrollTop <= 0 ? 0 : currentScrollTop;
1568			}, 100);
1569		})();
1570	</script>
1570
1571
1572	
1572<script>
1573		// 移动端内联导航:点击非下拉父项(空白/叶子链接)时收起所有展开的下拉
1574		document.addEventListener('click', function (e) {
1575			if (window.innerWidth > 1050) return;
1576			if (!e.target.closest('.nav-dropdown > a')) {
1577				document.querySelectorAll('.nav-dropdown.open').forEach(function (d) {
1578					d.classList.remove('open');
1579				});
1580			}
1581		});
1582	</script>
1582
1583
1584	<div class="floating-sidebar">
1585		<div class="float-item float-qr-content">
1586			<div class="float-icon"><i class="fab fa-weixin"></i></div>
1587			<div class="float-content">
1588				<span class="float-label" data-en="WeChat">微信公众号</span>
1589				<span class="float-value" data-en="Scan to Follow">扫码关注</span>
1590			</div>
1591			<div class="qr-popup">
1592				<img src="images/GZH.jpg" alt="微信公众号二维码">
1593				<p data-en="Baosi">鲍斯股份</p>
1594			</div>
1595		</div>
1596		<div class="float-item">
1597			<div class="float-icon"><i class="fas fa-phone"></i></div>
1598			<div class="float-content">
1599				<span class="float-label" data-en="Tel">联系电话</span>
1600				<span class="float-value">400-1006-555</span>
1601			</div>
1602		</div>
1603	</div>
1604
1605	
1605<script>
1606		// 微信二维码弹窗:点击切换,点击外部关闭
1607		(function () {
1608			var triggers = document.querySelectorAll('.nav-wechat-trigger');
1609			triggers.forEach(function (trigger) {
1610				trigger.addEventListener('click', function (e) {
1611					e.preventDefault();
1612					var box = trigger.closest('.nav-wechat');
1613					if (!box) return;
1614					var wasOpen = box.classList.contains('open');
1615					document.querySelectorAll('.nav-wechat.open').forEach(function (el) { el.classList.remove('open'); });
1616					if (!wasOpen) box.classList.add('open');
1617				});
1618			});
1619			document.addEventListener('click', function (e) {
1620				if (!e.target.closest('.nav-wechat')) {
1621					document.querySelectorAll('.nav-wechat.open').forEach(function (el) { el.classList.remove('open'); });
1622				}
1623			});
1624		})();
1625	</script>
1625
1626</body>
1627
1628</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.