first commit

This commit is contained in:
qwq
2026-04-20 16:18:26 +08:00
commit 51d794376c
2880 changed files with 673212 additions and 0 deletions
+366
View File
@@ -0,0 +1,366 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>产品详情 - 隼瞻科技</title>
<!-- Tailwind (kept, may be used for layout utilities) -->
<script src="https://cdn.tailwindcss.com"></script>
<!-- Font Awesome & Font -->
<link href="https://cdn.jsdelivr.net/npm/font-awesome@4.7.0/css/font-awesome.min.css" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">
<!-- Main styles (changed to text/css so WordPress won't ignore it) -->
<style type="text/css">
/* Colour system used in this component - scoped under #sj-product-page to avoid collisions with WP theme CSS */
#sj-product-page {
--primary: #3b82f6;
--secondary: #2563eb;
--accent: #60a5fa;
--dark: #111827;
--darker: #0b1220; /* slightly darker than original to ensure contrast */
--light: #f8fafc;
--bg-dark: #1f2937;
--bg-darker: #111827;
font-family: "Inter", sans-serif;
background-color: var(--darker) !important;
color: #e5e7eb !important;
}
/* Force colours for commonly used utility-like classes INSIDE our scope so WP theme CSS won't override */
#sj-product-page .bg-bg-darker { background-color: var(--bg-darker) !important; }
#sj-product-page .bg-bg-dark { background-color: var(--bg-dark) !important; }
#sj-product-page .bg-darker { background-color: var(--bg-darker) !important; }
#sj-product-page .bg-dark { background-color: var(--bg-dark) !important; }
#sj-product-page .bg-primary { background-color: var(--primary) !important; }
#sj-product-page .text-primary { color: var(--primary) !important; }
#sj-product-page .text-secondary { color: var(--secondary) !important; }
#sj-product-page .text-white { color: #ffffff !important; }
/* Replacements for Tailwind-like fractional opacity classes that use "/" (which can be tricky in CSS selectors).
In the markup we use bg-primary-20 and bg-primary-10, map them here. */
#sj-product-page .bg-primary-20 { background-color: rgba(59,130,246,0.20) !important; }
#sj-product-page .bg-primary-10 { background-color: rgba(59,130,246,0.10) !important; }
/* Text greys used in the content */
#sj-product-page .text-gray-100 { color: #f3f4f6 !important; }
#sj-product-page .text-gray-300 { color: #d1d5db !important; }
#sj-product-page .text-gray-400 { color: #9ca3af !important; }
/* Card and element overrides so WP theme won't change them unexpectedly */
#sj-product-page .rounded-xl { border-radius: 0.75rem !important; }
#sj-product-page .rounded-2xl { border-radius: 1rem !important; }
#sj-product-page .shadow-md { box-shadow: 0 6px 18px rgba(2,6,23,0.6) !important; }
#sj-product-page .shadow-lg { box-shadow: 0 10px 30px rgba(2,6,23,0.7) !important; }
/* Utility-ish things used in the layout */
#sj-product-page .container { max-width: 1200px; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; }
@media (min-width: 768px) { #sj-product-page .container { padding-left: 1.5rem; padding-right: 1.5rem; } }
@media (min-width: 1024px) { #sj-product-page .container { padding-left: 2rem; padding-right: 2rem; } }
/* Grid safe defaults inside scope */
#sj-product-page .grid { display: grid; gap: 1.5rem; }
@media (min-width: 768px) {
#sj-product-page .md\\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
#sj-product-page .md\\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
#sj-product-page .md\\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0,1fr)); }
#sj-product-page .md\\:grid-cols-6 { grid-template-columns: repeat(6, minmax(0,1fr)); }
}
@media (min-width: 1024px) {
#sj-product-page .lg\\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
#sj-product-page .lg\\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
/* Visual helpers included originally */
#sj-product-page .text-shadow { text-shadow: 0 2px 4px rgba(0,0,0,0.1); }
#sj-product-page .product-feature-card { transition: all 0.3s ease; }
#sj-product-page .product-feature-card:hover { transform: translateY(-5px); }
#sj-product-page .section-active { color: var(--secondary) !important; border-bottom: 2px solid var(--secondary) !important; }
/* Scroll animation - same as original but scoped */
#sj-product-page .animate-fade-in {
opacity: 0;
transform: translateY(20px);
transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
#sj-product-page .animate-fade-in.visible {
opacity: 1;
transform: translateY(0);
}
/* ripple and hover effects (scoped) */
#sj-product-page .hover-float { transition: transform 0.3s ease, box-shadow 0.3s ease; }
#sj-product-page .hover-float:hover { transform: translateY(-5px); }
/* background grid graphic - keep scoped to avoid global overrides */
#sj-product-page .bg-grid {
background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%239C92AC' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") !important;
}
/* gradient animation (scoped) */
@keyframes gradientFlow {
0% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
100% { background-position: 0% 50%; }
}
#sj-product-page .gradient-animate {
background-size: 200% 200% !important;
animation: gradientFlow 15s ease infinite !important;
}
/* subtle pulse */
@keyframes pulseSlow {
0%,100% { transform: scale(1); }
50% { transform: scale(1.05); }
}
#sj-product-page .animate-pulse-slow { animation: pulseSlow 3s ease-in-out infinite !important; }
/* Ensure links inside the scope have our primary colour by default */
#sj-product-page a { color: var(--primary) !important; text-decoration: none !important; }
#sj-product-page a:hover { color: var(--secondary) !important; }
/* Ensure images maintain high contrast against dark background */
#sj-product-page img { display: block; max-width: 100%; height: auto; }
/* Minor typography adjustments inside scope to avoid theme overrides */
#sj-product-page h1, #sj-product-page h2, #sj-product-page h3, #sj-product-page h4 {
color: #ffffff !important;
}
/* Make sure borders used in cards are visible on dark backgrounds */
#sj-product-page .border { border-color: rgba(255,255,255,0.06) !important; }
#sj-product-page .border-gray-700 { border-color: rgba(148,163,184,0.12) !important; }
</style>
<!-- Legacy utility styles (converted from original tailwind-layer rules) - kept scoped and with text/css -->
<style type="text/css">
/* small subset of custom utilities used by this page, scoped */
#sj-product-page .content-auto { content-visibility: auto; }
#sj-product-page .text-gradient { background-clip: text; -webkit-background-clip: text; color: transparent; }
#sj-product-page .product-feature-card { transition: all 0.3s ease; }
#sj-product-page .section-active { color: var(--secondary) !important; border-bottom: 2px solid var(--secondary) !important; }
#sj-product-page .count-up { transition: all 0.8s ease-out; }
#sj-product-page .ripple { position: relative; overflow: hidden; }
#sj-product-page .ripple:after {
content: "";
display: block;
position: absolute;
width: 100%;
height: 100%;
top: 0; left: 0;
pointer-events: none;
background-image: radial-gradient(circle, #fff 10%, transparent 10.01%);
background-repeat: no-repeat;
background-position: 50%;
transform: scale(10, 10);
opacity: 0;
transition: transform 0.5s, opacity 0.8s;
}
#sj-product-page .ripple:active:after { transform: scale(0,0); opacity: 0.3; transition: 0s; }
</style>
</head>
<body>
<!-- Wrapper with an ID so we can scope styles and avoid WP theme interference -->
<div id="sj-product-page" class="min-h-screen">
<!-- 产品页面头部 -->
<section class="pt-24 md:pt-32 pb-16 md:pb-24 bg-gradient-to-br gradient-animate" style="background: linear-gradient(135deg, rgba(31,41,55,0.95), rgba(11,18,32,1)); overflow:hidden;">
<div class="container mx-auto px-4 md:px-6 lg:px-8">
<div class="max-w-4xl mx-auto text-center">
<h1 class="text-[clamp(2rem,5vw,3.5rem)] font-bold text-white leading-tight text-shadow mb-6">
WLink-v1仿真器
</h1>
<div class="bg-primary-20 inline-block px-6 pt-4 rounded-full mb-6 animate-fade-in">
<h2 class="text-xl font-semibold text-primary">WLink介绍</h2>
</div>
<!-- 产品图片 - 可替换为实际产品图片 -->
<div class="mb-8 max-w-2xl mx-auto animate-fade-in">
<div class="bg-bg-darker p-4 rounded-xl shadow-lg">
<img src="https://www.beiyuxing.live/wp-content/uploads/2025/11/image-1.png" alt="Wing-M130处理器IP" class="w-full h-auto rounded-lg max-h-64 object-contain mx-auto">
<!-- 提示:请将上方src属性中的"your_product_image.png"替换为实际产品图片的路径 -->
</div>
</div>
<p class="text-lg md:text-xl text-gray-300 mb-8 max-w-2xl mx-auto" style="line-height:1.6;">
WLink-v1仿真器是隼瞻科技推出的用于支持隼瞻系列处理器内核的调试设备。适用于隼瞻各系列内核调试
</p>
<div class="w-24 h-1 bg-primary mx-auto" style="background-color:var(--primary); height:4px;"></div>
</div>
</div>
</section>
<!-- 2. 技术亮点 -->
<section id="features" class="section-content py-16 bg-bg-dark" style="background-color:var(--bg-dark);">
<div class="container mx-auto px-4 md:px-6 lg:px-8">
<div class="max-w-4xl mx-auto mb-16">
<h2 class="text-3xl md:text-4xl font-bold mb-6 text-white text-center">技术亮点</h2>
<div class="w-24 h-1 bg-primary mx-auto mb-12" style="background-color:var(--primary); height:4px;"></div>
</div>
<div class="space-y-6 max-w-4xl mx-auto">
<div class="bg-bg-darker p-6 rounded-xl shadow-md animate-fade-in">
<div class="flex items-start">
<div class="mt-1 bg-primary-10 p-2 rounded-lg">
<i class="fa fa-check text-primary"></i>
</div>
<div class="ml-4">
<h4 class="text-xl font-bold mb-2 text-white mt-3">严格按照RISC-V Debug Specification标准设计,支持1.0.00.13和0.11标准</h4>
</div>
</div>
</div>
<div class="bg-bg-darker p-6 rounded-xl shadow-md animate-fade-in" style="transition-delay: 0.1s">
<div class="flex items-start">
<div class="mt-1 bg-primary-10 p-2 rounded-lg">
<i class="fa fa-check text-primary"></i>
</div>
<div class="ml-4">
<h4 class="text-xl font-bold mb-2 text-white mt-3">支持四线JTAG和两线cJTAG,兼容各种目标板电压</h4>
</div>
</div>
</div>
<div class="bg-bg-darker p-6 rounded-xl shadow-md animate-fade-in" style="transition-delay: 0.2s">
<div class="flex items-start">
<div class="mt-1 bg-primary-10 p-2 rounded-lg">
<i class="fa fa-check text-primary"></i>
</div>
<div class="ml-4">
<h4 class="text-xl font-bold mb-2 text-white mt-3">与WingIDE无缝集成</h4>
</div>
</div>
</div>
<div class="bg-bg-darker p-6 rounded-xl shadow-md animate-fade-in" style="transition-delay: 0.3s">
<div class="flex items-start">
<div class="mt-1 bg-primary-10 p-2 rounded-lg">
<i class="fa fa-check text-primary"></i>
</div>
<div class="ml-4">
<h4 class="text-xl font-bold mb-2 text-white mt-3">紧凑,小巧的外观</h4>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- 3. 产品参数 -->
<section id="specifications" class="section-content py-16 bg-bg-dark" style="background-color:var(--bg-dark);">
<div class="container mx-auto px-4 md:px-6 lg:px-8">
<div class="max-w-4xl mx-auto mb-16">
<h2 class="text-3xl md:text-4xl font-bold mb-6 text-white text-center">产品参数</h2>
<p class="text-gray-300 mb-6 text-center">
Wing-M130 Processor IP的详细技术参数,为您提供全面的产品信息
</p>
<div class="w-24 h-1 bg-primary mx-auto mb-12" style="background-color:var(--primary); height:4px;"></div>
</div>
<div class="bg-bg-darker rounded-xl shadow-md p-8 animate-fade-in">
<h3 class="text-2xl font-bold mb-6 text-white">支持的标准</h3>
<div class="grid md:grid-cols-1 gap-6">
<div class="space-y-4">
<div class="flex justify-between pb-3 border-b border-gray-100">
<div class="bg-primary-10 rounded-lg p-2">
<i class="fa fa-check text-primary"></i>
</div>
<span class="font-medium mt-2" style="color: #4cd6b4;">支持RISC-V Debug Specification 1.0.0及0.13、0.11标准</span>
</div>
</div>
<div class="space-y-4">
<div class="flex justify-between pb-3 border-b border-gray-100">
<div class="bg-primary-10 rounded-lg p-2">
<i class="fa fa-check text-primary"></i>
</div>
<span class="font-medium mt-2" style="color: #4cd6b4;">支持IEEE-1149.1 JTAG标准</span>
</div>
</div>
<div class="space-y-4">
<div class="flex justify-between pb-3 border-b border-gray-100">
<div class="bg-primary-10 rounded-lg p-2">
<i class="fa fa-check text-primary"></i>
</div>
<span class="font-medium mt-2" style="color: #4cd6b4;">部分支持IEEE-1149.7 cJTAG标准</span>
</div>
</div>
</div>
</div>
<div class="bg-bg-darker rounded-xl shadow-md p-8 animate-fade-in">
<h3 class="text-xl font-bold mb-6 text-white">功能参数</h3>
<div class="grid md:grid-cols-2 gap-6">
<div class="space-y-4">
<div class="flex justify-between pb-3 border-b border-gray-100">
<span class="text-gray-400">Target Voltage</span>
<span class="font-medium text-white">1.8 ~ 3.3V</span>
</div>
<div class="flex justify-between pb-3 border-b border-gray-100">
<span class="text-gray-400">RISC-V Debug Spec</span>
<span class="font-medium text-white">1.0, 0.13, 0.11</span>
</div>
<div class="flex justify-between">
<span class="text-gray-400">Speed</span>
<span class="font-medium text-white">10kHz ~ 3MHz</span>
</div>
</div>
<div class="space-y-4">
<div class="flex justify-between pb-3 border-b border-gray-100">
<span class="text-gray-400">JTAG</span>
<span class="font-medium text-white">Yes</span>
</div>
<div class="flex justify-between pb-3 border-b border-gray-100">
<span class="text-gray-400">cJTAG</span>
<span class="font-medium text-white">Yes</span>
</div>
<div class="flex justify-between">
<span class="text-gray-400">USB</span>
<span class="font-medium text-white">USB C</span>
</div>
</div>
</div>
</div>
</div>
</section>
</div> <!-- end #sj-product-page -->
<!-- 咨询按钮 -->
<div class="fixed bottom-12 right-12 z-50 popupbox">
<button id="consult-button" class="bg-primary hover:bg-primary/90 text-white py-5 px-8 rounded-full shadow-xl transform transition-all duration-300 hover:scale-110 flex items-center gap-3 text-lg">
<i class="fa fa-comments-o text-2xl"></i>
<span class="font-bold">立刻咨询</span>
</button>
</div>
<!-- JavaScript - 仅保留滚动动画,移除标签页切换功能 -->
<script>
// 滚动动画 - scoped to the animate-fade-in elements inside #sj-product-page
document.addEventListener('DOMContentLoaded', function() {
const root = document.getElementById('sj-product-page');
if (!root) return;
const animateElements = root.querySelectorAll('.animate-fade-in');
function checkScroll() {
animateElements.forEach(element => {
const elementTop = element.getBoundingClientRect().top;
const elementVisible = 150;
if (elementTop < window.innerHeight - elementVisible) {
element.classList.add('visible');
}
});
}
// initial check
checkScroll();
// add listener
window.addEventListener('scroll', checkScroll, { passive: true });
// also on resize/orientation change to catch changes
window.addEventListener('resize', checkScroll);
});
</script>
</body>
</html>