<!--公用头部 begin -->
<!DOCTYPE html>
<html lang="zh-hans" dir="ltr" prefix="og: https://ogp.me/ns#">

<head>
    <meta charset="utf-8">
    <!--首页seo标题-->
    <title>电感式编码器芯片_电感编码器芯片_英达森斯半导体</title>
    <!--首页seo关键词-->
    <meta name="keywords" content="电感式编码器芯片,电感编码器芯片,位置传感器,PCB线圈设计工具,iCoil Studio,边缘AI算法,高精度位置传感器,绝对位置编码器,功能安全,ISO 26262" />
    <!--首页seo描述-->
    <meta name="description" content="英达森斯半导体源自上海，专注于电感编码器芯片及工程化赋能，提供全场景高精度电感传感器芯片、全球领先的PCB线圈设计工具iCoil Studio及边缘AI算法，服务于汽车电子、机器人、工业自动化等领域。" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link rel="canonical" href="https://www.induxense.com/index.php?m=home&c=View&a=index&aid=333" />
    <meta property="og:title" content="无人机云台与吊舱_英达森斯半导体" />
    <meta property="og:description" content="电感式编码器为无人机云台提供高精度位置反馈，微型编码器重量不足1g，抗振动耐高低温，适配航空环境。" />
    <meta property="og:type" content="article" />
    <meta property="og:url" content="https://www.induxense.com/index.php?m=home&c=View&a=index&aid=333" />
    <meta property="og:site_name" content="英达森斯半导体" />
    <meta property="og:image" content="https://www.induxense.com/uploads/allimg/20260808/cards/card_333_drone_gimbal.jpg" />
    <meta name="twitter:card" content="summary_large_image" />
    <meta name="twitter:title" content="无人机云台与吊舱_英达森斯半导体" />
    <meta name="twitter:description" content="电感式编码器为无人机云台提供高精度位置反馈，微型编码器重量不足1g，抗振动耐高低温，适配航空环境。" />
    <meta name="twitter:image" content="https://www.induxense.com/uploads/allimg/20260808/cards/card_333_drone_gimbal.jpg" />
    <link rel="icon" type="image/png" href="/favicon.ico" />
    <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
    <script type="application/ld+json">
    {"@context":"https://schema.org","@type":"Organization","name":"英达森斯半导体","alternateName":"上海英达森斯半导体科技有限公司","url":"https://www.induxense.com","logo":"/uploads/allimg/20250929/1-2509291S3311O.png","description":"英达森斯半导体源自上海，专注于电感编码器芯片及工程化赋能，提供全场景高精度电感传感器芯片、PCB线圈设计工具iCoil Studio及边缘AI算法","address":{"@type":"PostalAddress","addressLocality":"上海","addressCountry":"CN"},"sameAs":["https://www.induxense.com"]}
    </script>
    <script type="application/ld+json">
    {"@context":"https://schema.org","@type":"WebSite","name":"英达森斯半导体","url":"https://www.induxense.com","description":"电感式编码器芯片_电感编码器芯片","inLanguage":"zh-Hans"}
    </script>
    <script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"首页","item":"https://www.induxense.com/"},{"@type":"ListItem","position":2,"name":"航空航天与国防","item":"https://www.induxense.com/index.php?m=home&c=View&a=index&aid=333"}]}</script><script type="text/javascript" src="/public/static/common/js/ey_global.js?v=v1.8.1"></script>
</head>

<body>
    <div class="header__wrapper">
        <div class="dialog-off-canvas-main-canvas" data-off-canvas-main-canvas>
            <div class="l-container">

<style>
    /* === Global CSS Variables === */
    :root {
        --font-display: 'PingFang SC', 'Microsoft YaHei', sans-serif;
        --font-body: 'PingFang SC', 'Microsoft YaHei', sans-serif;
        --font-mono: 'SF Mono', Menlo, Consolas, monospace;
    }
/* v=20260622-009 */
html {
    /* 恒定预留竖向滚动条槽位：短页面滚动条消失时，居中头部不再横向跳动 */
    scrollbar-gutter: stable;
    overflow-y: scroll;
}
body{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: var(--font-body);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Modern Navigation Header - Professional Style */
.modern-header {
    background: linear-gradient(135deg, #F8FBFF 0%, #F0F7FF 100%);
    position: sticky;
    top: 0;
    z-index: 1000;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.modern-header.scrolled {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 6px 24px rgba(0, 0, 0, 0.06);
}

.header-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 72px;
}

/* Logo */
.header-logo {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #1a1a1a;
    text-decoration: none;
    font-size: 1.375rem;
    font-weight: 700;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    letter-spacing: -0.02em;
}

.header-logo:hover {
    color: #0573C3;
    text-decoration: none;
}

.header-logo-icon {
    width: auto;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.header-logo-icon img {
    height: 100%;
    width: auto;
    object-fit: contain;
    transition: all 0.3s ease;
}

.header-logo-text {
    font-size: 20px;
    font-weight: 700;
    font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
    letter-spacing: -0.4px;
    color: inherit;
    white-space: nowrap;
    background: linear-gradient(135deg, #1a1a1a 0%, #1A1A1A 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Navigation */
.header-nav {
    display: flex;
    align-items: center;
    flex: 1;
    justify-content: center;
    margin: 0 20px;
}

.nav-menu {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 4px;
}

.nav-item {
    position: relative;
}

.nav-link {
    display: flex;
    align-items: center;
    padding: 8px 14px;
    color: #1e293b;
    text-decoration: none;
    transition: color 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    font-weight: 600;
    font-size: 14.5px;
    font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
    white-space: nowrap;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    height: 40px;
    box-sizing: border-box;
    letter-spacing: -0.01em;
}

.nav-link::before {
    content: '';
    position: absolute;
    bottom: 8px;
    left: 50%;
    width: 0;
    height: 2px;
    background: #FFA505;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateX(-50%);
    border-radius: 2px;
    opacity: 0;
}

.nav-link:not(.active):hover::before {
    width: calc(100% - 28px);
    opacity: 1;
}

.nav-link:hover,
.nav-link.active {
    color: #FFA505;
    text-decoration: none;
    font-weight: 600;
    background: none;
}

.nav-link.active:hover {
    background: transparent;
}

.nav-link.active::after {
    content: '';
    position: absolute;
    bottom: 8px;
    left: 50%;
    width: calc(100% - 28px);
    height: 2px;
    background: #FFA505;
    transform: translateX(-50%);
    border-radius: 2px;
    box-shadow: 0 2px 8px rgba(5, 115, 195, 0.2);
}

/* ===== Mega Dropdown (Professional Style) ===== */
.nav-dropdown {
    position: fixed;
    top: 72px;
    left: 0;
    right: 0;
    width: 100vw;
    background: linear-gradient(180deg, #F0F6FF 0%, #E8F2FF 100%);
    backdrop-filter: blur(40px);
    -webkit-backdrop-filter: blur(40px);
    border-radius: 0;
    box-shadow: 
        0 4px 6px -1px rgba(0, 0, 0, 0.02),
        0 10px 15px -3px rgba(0, 0, 0, 0.04),
        0 20px 40px -8px rgba(0, 0, 0, 0.06);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: all 0.35s cubic-bezier(0.16, 1, 0.32, 1);
    z-index: 9999;
    border-bottom: 1px solid rgba(5, 115, 195, 0.15);
}

/* 透明桥接区域，消除nav-item与dropdown之间的hover间隙 */
.nav-item.has-dropdown::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    height: 20px;
    background: transparent;
}

.nav-item:hover .nav-dropdown,
.nav-item:focus-within .nav-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.dropdown-content {
    max-width: 1440px;
    margin: 0;
    padding: 56px 48px;
    position: relative;
}

.dropdown-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 48px;
    right: 48px;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(5, 115, 195, 0.2) 50%, transparent 100%);
}

.dropdown-header {
    margin-bottom: 48px;
    position: relative;
}

.dropdown-header::after {
    content: '';
    display: block;
    width: 48px;
    height: 3px;
    background: #FFA505;
    margin: 20px auto 0;
    border-radius: 2px;
}

.dropdown-title {
    font-size: 1.75rem;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 12px;
    letter-spacing: -0.03em;
    line-height: 1.2;
}

.dropdown-subtitle {
    color: #737373;
    font-size: 15px;
    line-height: 1.6;
    max-width: 640px;
    margin: 0 auto;
}

.dropdown-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

@media (max-width: 1200px) {
    .dropdown-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }
}

.dropdown-card {
    background: linear-gradient(135deg, #FFFBF5 0%, #FFF7ED 100%);
    border-radius: 16px;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.32, 1);
    border: 1px solid #F0F3F7;
    text-decoration: none;
    color: inherit;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
    position: relative;
}

.dropdown-card::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 16px;
    padding: 1px;
    background: linear-gradient(135deg, rgba(5, 115, 195, 0.08) 0%, transparent 50%);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.dropdown-card:hover {
    transform: translateY(-4px);
    box-shadow: 
        0 12px 24px -8px rgba(255, 165, 5, 0.15),
        0 4px 8px -4px rgba(255, 165, 5, 0.1);
    border-color: #FFA505;
    background: linear-gradient(135deg, #FFF7ED 0%, #FFEDD5 100%);
    text-decoration: none;
    color: inherit;
}

.dropdown-card:hover::before {
    opacity: 1;
}

.dropdown-card-image {
    display: none;
}

.dropdown-card:hover .dropdown-card-image {
    background: linear-gradient(135deg, #EBF4FF 0%, #F5F7FA 100%);
}

.dropdown-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.5s cubic-bezier(0.16, 1, 0.32, 1);
}

.dropdown-card:hover .dropdown-card-image img {
    transform: scale(1.05);
}

.dropdown-card-image::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(to top, rgba(0,0,0,0.03) 0%, transparent 100%);
    pointer-events: none;
}

.dropdown-card-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    background: rgba(255, 255, 255, 0.95);
    color: #0573C3;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.dropdown-card-content {
    padding: 20px 0;
    position: relative;
    background: linear-gradient(135deg, #FFFBF5 0%, #FFF7ED 100%);
    border-radius: 16px;
}

.dropdown-card-category {
    color: #0573C3;
    font-size: 11px;
    font-weight: 600;
    margin: 16px 20px 8px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.dropdown-card-title {
    font-size: 15px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.5;
    margin: 0 20px 10px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: all 0.2s ease;
    letter-spacing: -0.01em;
}

.dropdown-card:hover .dropdown-card-title {
    color: #FFA505;
}

.dropdown-card-description {
    color: #737373;
    font-size: 13px;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0 20px;
    padding: 12px 0 20px;
    border-top: 1px solid #F8F9FB;
}

.dropdown-footer {
    text-align: center;
    margin-top: 48px;
    padding-top: 32px;
    border-top: 1px solid #F0F3F7;
    position: relative;
}

.dropdown-footer::before {
    content: '';
    position: absolute;
    top: -1px;
    left: 50%;
    transform: translateX(-50%);
    width: 64px;
    height: 2px;
    background: #FFA505;
}

.dropdown-view-all {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: #FFA505;
    color: white;
    text-decoration: none;
    border-radius: 12px;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.32, 1);
    box-shadow: 0 4px 12px rgba(5, 115, 195, 0.2);
    letter-spacing: 0.01em;
}

.dropdown-view-all:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(5, 115, 195, 0.3);
    color: white;
    text-decoration: none;
    background: linear-gradient(135deg, #3498DB 0%, #0573C3 100%);
}

.dropdown-view-all svg {
    width: 18px;
    height: 18px;
    transition: transform 0.2s ease;
}

.dropdown-view-all:hover svg {
    transform: translateX(4px);
}

/* ===== Tree Dropdown Menu (Clean Professional Style) ===== */
.nav-dropdown-tree {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    transform: translateY(-8px);
    background: #ffffff;
    border-radius: 0;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 9999;
    min-width: 240px;
    padding: 10px 8px;
    border: 1px solid rgba(0, 0, 0, 0.06);
}

.nav-item:hover > .nav-dropdown-tree,
.nav-item:focus-within > .nav-dropdown-tree,
.nav-dropdown-tree:hover {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.tree-level1-item {
    position: relative;
    margin: 0;
}

.tree-level1-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 9px 14px;
    color: #334155;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.3s ease;
    white-space: nowrap;
    border-radius: 0;
    letter-spacing: -0.01em;
    position: relative;
}

.tree-level1-link:hover {
    background: #dbeafe;
    color: #1e293b;
    box-shadow: inset 3px 0 0 #0573C3;
}

.tree-level1-link .arrow-right {
    width: 14px;
    height: 14px;
    color: #94a3b8;
    transition: all 0.2s ease;
    flex-shrink: 0;
    margin-left: 8px;
}

.tree-level1-item:hover > .tree-level1-link .arrow-right {
    transform: translateX(3px);
    color: #1e293b;
}

.tree-level2-wrap {
    position: absolute;
    top: -10px;
    left: calc(100% + 4px);
    background: #ffffff;
    border-radius: 0;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    min-width: 200px;
    padding: 10px 8px;
    border: 1px solid rgba(0, 0, 0, 0.06);
    opacity: 0;
    visibility: hidden;
    transform: translateX(-6px);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tree-level1-item:hover > .tree-level2-wrap {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

.tree-level2-link {
    display: flex;
    align-items: center;
    padding: 8px 14px 8px 16px;
    color: #334155;
    text-decoration: none;
    font-size: 13px;
    font-weight: 400;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.3s ease;
    white-space: nowrap;
    border-radius: 0;
    position: relative;
    letter-spacing: -0.01em;
}

.tree-level2-link:hover {
    background: #ffedd5;
    color: #1e293b;
    box-shadow: inset 3px 0 0 #E67E22;
}

/* 产品栏目平铺分组样式 */
.tree-group {
    padding: 6px 4px;
}
.tree-group + .tree-group {
    border-top: 1px solid #F1F5F9;
    margin-top: 4px;
    padding-top: 10px;
}
.tree-group-title {
    padding: 6px 14px 8px;
    font-size: 12px;
    font-weight: 700;
    color: #334155;
    letter-spacing: 0.02em;
    text-transform: none;
    display: flex;
    align-items: center;
    gap: 6px;
}
.tree-group-title-link {
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
}
.tree-group-title-link:hover {
    color: #0573C3;
    background: rgba(5, 115, 195, 0.06);
    border-radius: 4px;
}
.tree-group-title::before {
    content: '';
    display: inline-block;
    width: 3px;
    height: 12px;
    background: #94a3b8;
    border-radius: 2px;
    flex-shrink: 0;
}
.tree-group-items {
    display: flex;
    flex-direction: column;
    gap: 1px;
}
.tree-flat-item {
    padding-left: 23px !important;
}

/* Header Actions */
.header-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

/* header-nav 保持自然宽度，不裁切 */

.header-action-btn {
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    border: 1px solid #DDE4ED;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #525252;
    text-decoration: none;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    background: linear-gradient(135deg, #FFFBF5 0%, #FFF7ED 100%);
    position: relative;
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
}

.header-action-btn.icon-only {
    width: 40px;
    padding: 0;
}

.header-action-btn span {
    display: inline-block;
}

.header-action-btn:hover {
    background: none;
    border-color: rgba(255, 165, 5, 0.3);
    color: #0573C3;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(5, 115, 195, 0.08);
}

.header-action-btn svg {
    width: 18px;
    height: 18px;
    transition: all 0.2s ease;
}

.cart-badge {
    position: absolute;
    top: -6px;
    right: -6px;
    background: linear-gradient(135deg, #0573C3 0%, #3498DB 100%);
    color: white;
    font-size: 10px;
    font-weight: 700;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(5, 115, 195, 0.4);
    border: 2px solid #ffffff;
}

/* User Account - Logged In */
.header-action-btn.user-logged-in {
    padding: 0 12px 0 6px;
    gap: 8px;
    background: linear-gradient(135deg, #FFF8F0 0%, #FFF0E0 100%);
    border-color: rgba(255, 165, 5, 0.25);
    color: #E67E22;
}

.header-action-btn.user-logged-in:hover {
    background: linear-gradient(135deg, #FFF0E0 0%, #FFE8D0 100%);
    border-color: rgba(255, 165, 5, 0.5);
    color: #D35400;
    box-shadow: 0 4px 16px rgba(230, 126, 34, 0.15);
}

/* Admin logged-in style */
.header-action-btn.admin-logged-in {
    background: linear-gradient(135deg, #EBF6FF 0%, #D9EDFF 100%);
    border-color: rgba(5, 115, 195, 0.2);
    color: #0573C3;
}
.header-action-btn.admin-logged-in:hover {
    background: linear-gradient(135deg, #D9EDFF 0%, #C5E4FF 100%);
    border-color: rgba(5, 115, 195, 0.4);
    color: #045691;
    box-shadow: 0 4px 16px rgba(5, 115, 195, 0.12);
}

/* User dropdown menu */
.user-dropdown-wrap:hover .user-dropdown-menu,
.user-dropdown-wrap .user-dropdown-menu:hover {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}
.user-dropdown-menu a:hover {
    background: #F8FAFC !important;
}
.user-dropdown-menu a:last-child:hover {
    background: #EFF7FF !important;
}

.user-avatar {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.user-name {
    max-width: 80px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 600;
    font-size: 13px;
}

/* User Account - Not Logged In */
.header-action-btn.user-not-logged-in {
    color: #999999;
    background: linear-gradient(135deg, #F8F9FA 0%, #F0F1F2 100%);
    border-color: #E0E0E0;
}

.header-action-btn.user-not-logged-in:hover {
    color: #666666;
    border-color: #CCCCCC;
    background: linear-gradient(135deg, #F0F1F2 0%, #E8E9EA 100%);
}

.user-icon-gray {
    stroke: #AAAAAA;
    transition: stroke 0.2s ease;
}

.header-action-btn.user-not-logged-in:hover .user-icon-gray {
    stroke: #777777;
}

/* Mobile Menu Toggle */
.mobile-menu-toggle {
    display: none;
    width: 40px;
    height: 40px;
    background: #F5F7FA;
    border: 1px solid #DDE4ED;
    border-radius: 10px;
    align-items: center;
    justify-content: center;
    color: #525252;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.mobile-menu-toggle:hover {
    background: none;
    border-color: rgba(255, 165, 5, 0.3);
    color: #0573C3;
    transform: scale(1.05);
}

.mobile-menu-toggle svg {
    width: 20px;
    height: 20px;
    transition: all 0.3s ease;
}

/* Mobile Menu - Fixed Blue Background */
.mobile-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: linear-gradient(135deg, #FFFBF5 0%, #FFF7ED 100%);
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    backdrop-filter: blur(10px);
    z-index: 999;
    max-height: calc(100vh - 72px);
    overflow-y: auto;
}

.mobile-menu.active {
    display: block;
    animation: slideDown 0.3s ease;
    position: relative;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.mobile-nav-menu {
    list-style: none;
    margin: 0;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.mobile-nav-link {
    display: block;
    padding: 14px 20px;
    color: #1A1A1A;
    text-decoration: none;
    border-radius: 10px;
    transition: all 0.3s ease;
    font-weight: 500;
    border: 1px solid transparent;
    line-height: 1.5;
    font-size: 14.5px;
}

.mobile-nav-link:hover,
.mobile-nav-link.active {
    color: #0573C3;
    background: none;
    border-color: rgba(5, 115, 195, 0.08);
    transform: translateX(4px);
    text-decoration: none;
}

/* 移动端分组标题 */
.mobile-group-title {
    padding: 12px 20px 6px;
    font-size: 12px;
    font-weight: 700;
    color: #334155;
    letter-spacing: 0.02em;
    display: flex;
    align-items: center;
    gap: 6px;
}
.mobile-group-title::before {
    content: '';
    display: inline-block;
    width: 3px;
    height: 12px;
    background: #94a3b8;
    border-radius: 2px;
    flex-shrink: 0;
}
.mobile-group-title-link {
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    padding-right: 20px;
}
.mobile-group-title-link:hover {
    color: #0573C3;
    background: rgba(5, 115, 195, 0.04);
}

/* 二级菜单样式 - Mobile */
.mobile-submenu {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, #FFFBF5 0%, #FFF7ED 100%);
    z-index: 10;
    overflow-y: auto;
    animation: slideInRight 0.3s ease;
}

@keyframes slideInRight {
    from {
        transform: translateX(100%);
    }
    to {
        transform: translateX(0);
    }
}

.submenu-header {
    display: flex;
    align-items: center;
    padding: 16px 20px;
    background: #F5F7FA;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    position: sticky;
    top: 0;
    z-index: 11;
}

.submenu-back {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #1A1A1A;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    padding: 8px 12px;
    border-radius: 8px;
    transition: all 0.3s ease;
    background: rgba(0, 0, 0, 0.02);
}

.submenu-back:hover {
    background: none;
    color: #0573C3;
    transform: translateX(-4px);
    text-decoration: none;
}

.submenu-back svg {
    flex-shrink: 0;
}

.submenu-title {
    flex: 1;
    text-align: center;
    color: #1a1a1a;
    font-weight: 600;
    font-size: 16px;
    margin-right: 80px;
}

.submenu-list {
    padding: 16px;
}

.mobile-nav-link.has-submenu {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.arrow-icon {
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .header-container {
        padding: 0 32px;
    }
    
    .header-nav {
        margin: 0 12px;
    }
    
    .nav-menu {
        gap: 2px;
    }

    .nav-link {
        padding: 8px 16px;
        font-size: 13.5px;
    }

    .nav-dropdown {
        width: 100%;
    }

    .dropdown-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .dropdown-content {
        padding: 40px 32px;
    }
}

@media (max-width: 768px) {
    .header-container {
        height: 64px;
        padding: 0 20px;
    }

    .header-nav {
        display: none;
    }

    .mobile-menu-toggle {
        display: flex;
    }

    .header-actions {
        gap: 8px;
    }

    .header-action-btn {
        width: 36px;
        height: 36px;
    }

    .header-logo {
        font-size: 1.25rem;
    }

    .header-logo-icon {
        height: 38px;
    }
    
    .header-logo-icon img {
        height: 100%;
        width: auto;
    }

    .nav-dropdown {
        display: none !important;
    }
    
    .mobile-menu {
        max-height: calc(100vh - 64px);
    }
}

@media (max-width: 480px) {
    .header-container {
        height: 56px;
        padding: 0 16px;
    }

    .header-logo {
        font-size: 1.125rem;
        gap: 10px;
    }

    .header-logo-icon {
        height: 34px;
    }
    
    .header-logo-icon img {
        height: 100%;
        width: auto;
    }

    .header-action-btn {
        width: 32px;
        height: 32px;
    }

    .header-action-btn svg {
        width: 16px;
        height: 16px;
    }

    .header-action-btn.user-logged-in {
        padding: 0 8px 0 4px;
        gap: 4px;
    }

    .user-avatar {
        width: 24px;
        height: 24px;
    }

    .user-name {
        max-width: 60px;
        font-size: 12px;
    }

    .mobile-menu {
        max-height: calc(100vh - 56px);
    }
}

/* 搜索表单样式 */
.search-form-inline {
    display: flex;
    align-items: center;
    gap: 0;
    margin: 0;
    padding: 0;
    background: #F5F7FA;
    border-radius: 25px;
    border: 2px solid #DDE4ED;
    overflow: hidden;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.search-form-inline:hover,
.search-form-inline:focus-within {
    background: linear-gradient(135deg, #FFFBF5 0%, #FFF7ED 100%);
    border-color: #C5CDD8;
    box-shadow: 0 0 0 3px rgba(5, 115, 195, 0.08);
}

.search-input-inline {
    width: 160px;
    height: 40px;
    border: none;
    border-radius: 25px;
    padding: 0 20px;
    background: transparent;
    color: #1a1a1a;
    font-size: 14px;
    outline: none;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.search-input-inline::placeholder {
    color: #a3a3a3;
}

.search-input-inline:focus {
    background: transparent;
}

.search-btn-inline {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border: none;
    background: #DDE4ED;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #525252;
    cursor: pointer;
    transition: all 0.3s ease;
    margin: 2px;
}

.search-btn-inline:hover {
    background: #C5CDD8;
    transform: scale(1.05);
}

/* 响应式设计 */
@media (max-width: 768px) {
    .search-form-inline {
        display: none;
    }

    .header-actions {
        flex-shrink: 0;
        gap: 6px;
    }

    .header-action-btn.user-not-logged-in span {
        display: none;
    }
}

@media (max-width: 480px) {
    .header-actions {
        gap: 4px;
    }

    .header-action-btn {
        min-width: 32px;
        height: 32px;
        padding: 0 8px;
    }

    .header-action-btn.icon-only {
        width: 32px;
        padding: 0;
    }

    .header-action-btn svg {
        width: 16px;
        height: 16px;
    }
}


/* ============================================================
   🎨 品牌色变量（来自 Logo 色彩提取）
   - 蓝色 #0573C3 (89.6%) → 品牌主色，专业、科技、可靠
   - 橙色 #FFA505 (10.3%) → 品牌强调色，能量、活力、行动
   ============================================================ */

/* ===== Clean Dropdown Transitions ===== */

/* Nav link hover - clean, no text shadow */
.nav-link:not(.active):hover {
    text-shadow: none;
}

/* Dropdown tree - simple fade down, no stagger */
.nav-dropdown-tree {
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12) !important;
    transform: translateY(-8px) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.nav-item:hover > .nav-dropdown-tree,
.nav-item:focus-within > .nav-dropdown-tree,
.nav-dropdown-tree:hover {
    transform: translateY(0) !important;
}

/* Tree level2 - simple slide in */
.tree-level2-wrap {
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12) !important;
    transform: translateX(-6px) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.tree-level1-item:hover > .tree-level2-wrap {
    transform: translateX(0) !important;
}

/* Mega dropdown - simple fade */
.nav-dropdown {
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.10) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Nav active link - clean underline, no glow */
.nav-link.active::after {
    box-shadow: none;
}

/* Header scrolled - simple border */
.modern-header.scrolled {
    border-bottom-color: rgba(0, 0, 0, 0.06);
}
.modern-header.scrolled::after {
    display: none;
}

/* ===== Scroll Animation Classes ===== */
.scroll-fade-up,
.scroll-fade-left,
.scroll-fade-right,
.scroll-scale {
    opacity: 0;
    transition: opacity 0.9s cubic-bezier(0.16, 1, 0.32, 1), transform 0.9s cubic-bezier(0.16, 1, 0.32, 1);
    will-change: opacity, transform;
}
.scroll-fade-up { transform: translateY(36px); }
.scroll-fade-left { transform: translateX(-30px); }
.scroll-fade-right { transform: translateX(30px); }
.scroll-scale { transform: scale(0.94); }

.scroll-fade-up.visible,
.scroll-fade-left.visible,
.scroll-fade-right.visible,
.scroll-scale.visible {
    opacity: 1;
    transform: translate(0, 0) scale(1);
}

.scroll-delay-1 { transition-delay: 0.08s; }
.scroll-delay-2 { transition-delay: 0.16s; }
.scroll-delay-3 { transition-delay: 0.24s; }
.scroll-delay-4 { transition-delay: 0.32s; }

/* Hero parallax */
.idx-hero-bg {
    transition: transform 0.1s linear;
    will-change: transform;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .scroll-fade-up, .scroll-fade-left, .scroll-fade-right, .scroll-scale {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
    .nav-dropdown-tree, .tree-level2-wrap, .nav-dropdown {
        transition: none !important;
    }
}

/* ===== FORCE COLOR OVERRIDE 007 ===== */
.nav-dropdown{background:linear-gradient(180deg,#F0F6FF,#E8F2FF)!important}
.dropdown-card,.nav-dropdown .dropdown-card{background:linear-gradient(135deg,#FFFBF5,#FFF7ED)!important;border:1px solid #FED7AA!important}
.dropdown-card:hover,.nav-dropdown .dropdown-card:hover{background:linear-gradient(135deg,#FFF7ED,#FFEDD5)!important;border-color:#FFA505!important;box-shadow:0 12px 24px -8px rgba(255,165,5,.2)!important}
.dropdown-card:hover .dropdown-card-title{color:#FFA505!important}
.dropdown-card-image{display:none!important}
.dropdown-card-content{background:transparent!important}
/* ===== END ===== */
</style>

<!-- Modern Navigation Header -->
<header class="modern-header" id="modernHeader">
    <div class="header-container">
        <!-- Logo -->
        <a href="/" class="header-logo">
            <div class="header-logo-icon">
                <img src="/uploads/allimg/20250929/1-2509291S3311O.png" alt="英达森斯半导体" class="img-responsive"/>
            </div>
            <span class="header-logo-text">英达森斯半导体</span>
        </a>

        <!-- Desktop Navigation -->
        <nav class="header-nav" aria-label="主导航">
            <ul class="nav-menu">
                                <li class="nav-item has-dropdown" aria-haspopup="true">
                                            <a href="/index.php?m=home&c=Lists&a=index&tid=70" class="nav-link">产品</a>
                                                <div class="nav-dropdown-tree">
                                                        <div class="tree-level1-item tree-group">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=70" class="tree-group-title tree-group-title-link">
                                    <span>电感式编码器芯片</span>
                                </a>
                                <div class="tree-group-items">
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=71" class="tree-level2-link tree-flat-item">模拟输出芯片</a>
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=72" class="tree-level2-link tree-flat-item">数字输出芯片</a>
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=22" class="tree-level2-link tree-flat-item">混合信号输出</a>
                                                                    </div>
                            </div>
                                                    </div>
                                    </li>
                                <li class="nav-item has-dropdown" aria-haspopup="true">
                                            <a href="/index.php?m=home&c=Lists&a=index&tid=4" class="nav-link active">应用</a>
                                                <div class="nav-dropdown-tree">
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=98" class="tree-level1-link">
                                    <span>工业自动化</span>
                                                                        <svg class="arrow-right" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>
                                                                    </a>
                                                                <div class="tree-level2-wrap">
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=64" class="tree-level2-link">伺服与自动化</a>
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=91" class="tree-level2-link">精密量具与仪器</a>
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=92" class="tree-level2-link">智能仪表与计量</a>
                                                                    </div>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=99" class="tree-level1-link">
                                    <span>具身智能与机器人</span>
                                                                        <svg class="arrow-right" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>
                                                                    </a>
                                                                <div class="tree-level2-wrap">
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=17" class="tree-level2-link">机器人</a>
                                                                    </div>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=100" class="tree-level1-link">
                                    <span>汽车电子与线控底盘</span>
                                                                        <svg class="arrow-right" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>
                                                                    </a>
                                                                <div class="tree-level2-wrap">
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=66" class="tree-level2-link">汽车电子</a>
                                                                    </div>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=101" class="tree-level1-link">
                                    <span>新能源与高端装备</span>
                                                                        <svg class="arrow-right" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>
                                                                    </a>
                                                                <div class="tree-level2-wrap">
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=94" class="tree-level2-link">航空航天与国防</a>
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=97" class="tree-level2-link">能源与重型装备</a>
                                                                    </div>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=102" class="tree-level1-link">
                                    <span>智慧医疗与智能生活</span>
                                                                        <svg class="arrow-right" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>
                                                                    </a>
                                                                <div class="tree-level2-wrap">
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=93" class="tree-level2-link">医疗器械</a>
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=95" class="tree-level2-link">智能楼宇与电梯</a>
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=96" class="tree-level2-link">消费电子与智能硬件</a>
                                                                    </div>
                                                            </div>
                                                    </div>
                                    </li>
                                <li class="nav-item has-dropdown" aria-haspopup="true">
                                            <a href="/index.php?m=home&c=Lists&a=index&tid=31" class="nav-link">设计与开发</a>
                                                <div class="nav-dropdown-tree">
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=78" class="tree-level1-link">
                                    <span>评测套件</span>
                                                                        <svg class="arrow-right" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>
                                                                    </a>
                                                                <div class="tree-level2-wrap">
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=83" class="tree-level2-link">信号模拟测试输入平台</a>
                                                                    </div>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=79" class="tree-level1-link">
                                    <span>开发工具</span>
                                                                        <svg class="arrow-right" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 18l6-6-6-6"/></svg>
                                                                    </a>
                                                                <div class="tree-level2-wrap">
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=80" class="tree-level2-link">芯片配置工具（ICS）</a>
                                                                        <a href="/index.php?m=home&c=Lists&a=index&tid=81" class="tree-level2-link">芯片编程工具（IPS）</a>
                                                                    </div>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=82" class="tree-level1-link">
                                    <span>参考设计</span>
                                                                    </a>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=5" class="tree-level1-link">
                                    <span>算法赋能（AI）</span>
                                                                    </a>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=32" class="tree-level1-link">
                                    <span>iCoil Studio PCB线圈设计平台</span>
                                                                    </a>
                                                            </div>
                                                    </div>
                                    </li>
                                <li class="nav-item has-dropdown" aria-haspopup="true">
                                            <a href="/index.php?m=home&c=Lists&a=index&tid=19" class="nav-link">电感式编码器百科</a>
                                        </li>
                                <li class="nav-item has-dropdown" aria-haspopup="true">
                                            <a href="/index.php?m=home&c=Lists&a=index&tid=2" class="nav-link">新闻中心</a>
                                                <div class="nav-dropdown-tree">
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=10" class="tree-level1-link">
                                    <span>公司动态</span>
                                                                    </a>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=11" class="tree-level1-link">
                                    <span>行业资讯</span>
                                                                    </a>
                                                            </div>
                                                    </div>
                                    </li>
                                <li class="nav-item has-dropdown" aria-haspopup="true">
                                            <a href="/index.php?m=home&c=Lists&a=index&tid=73" class="nav-link">支持与服务</a>
                                                <div class="nav-dropdown-tree">
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=74" class="tree-level1-link">
                                    <span>文档中心</span>
                                                                    </a>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=75" class="tree-level1-link">
                                    <span>工具下载</span>
                                                                    </a>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=76" class="tree-level1-link">
                                    <span>技术支持</span>
                                                                    </a>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=77" class="tree-level1-link">
                                    <span>常见问题</span>
                                                                    </a>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=103" class="tree-level1-link">
                                    <span>视频专区</span>
                                                                    </a>
                                                            </div>
                                                    </div>
                                    </li>
                                <li class="nav-item has-dropdown" aria-haspopup="true">
                                            <a href="/index.php?m=home&c=Lists&a=index&tid=1" class="nav-link">关于英达森斯</a>
                                                <div class="nav-dropdown-tree">
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=8" class="tree-level1-link">
                                    <span>公司简介</span>
                                                                    </a>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=9" class="tree-level1-link">
                                    <span>简历投递</span>
                                                                    </a>
                                                            </div>
                                                        <div class="tree-level1-item">
                                <a href="/index.php?m=home&c=Lists&a=index&tid=30" class="tree-level1-link">
                                    <span>联系我们</span>
                                                                    </a>
                                                            </div>
                                                    </div>
                                    </li>
                            </ul>
        </nav>

        <!-- Header Actions -->
        <div class="header-actions">
                        <form method="get" action="/index.php?m=home&c=Search&a=lists" id="searchForm" class="search-form-inline" role="search">
                <input name="keywords" id="keywords" type="text" class="search-input-inline" placeholder="搜索">
                <input type="hidden" name="m" value="home" /><input type="hidden" name="c" value="Search" /><input type="hidden" name="a" value="lists" /><input type="hidden" name="method" value="1" />                <button type="submit" class="header-action-btn icon-only search-btn-inline" title="搜索" aria-label="搜索">
                    <svg viewBox="0 0 24 24" fill="none">
                        <circle cx="11" cy="11" r="8" stroke="currentColor" stroke-width="2"/>
                        <path d="m21 21-4.35-4.35" stroke="currentColor" stroke-width="2"/>
                    </svg>
                </button>
            </form>
            
            <!-- Cart Icon -->
            <a href="/index.php?m=user&c=Shop&a=shop_cart_list" class="header-action-btn icon-only" title="购物车">
                <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
                    <circle cx="9" cy="21" r="1"/><circle cx="20" cy="21" r="1"/>
                    <path d="M1 1h4l2.68 13.39a2 2 0 002 1.61h9.72a2 2 0 002-1.61L23 6H6"/>
                </svg>
                <span class="cart-badge" id="cartBadge" style="display:none;">0</span>
            </a>

            <!-- User Account -->
                        <a href="/index.php?m=user&c=Users&a=login" class="header-action-btn user-not-logged-in" title="登录/注册">
                <svg class="user-icon-gray" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round">
                    <circle cx="12" cy="8" r="4"/>
                    <path d="M20 21a8 8 0 10-16 0"/>
                </svg>
                <span>登录</span>
            </a>
            
            <!-- Mobile Menu Toggle -->
            <button class="mobile-menu-toggle" id="mobileMenuToggle" aria-expanded="false" aria-label="菜单" type="button">
                <svg viewBox="0 0 24 24" fill="none">
                    <line x1="3" y1="6" x2="21" y2="6" stroke="currentColor" stroke-width="2"/>
                    <line x1="3" y1="12" x2="21" y2="12" stroke="currentColor" stroke-width="2"/>
                    <line x1="3" y1="18" x2="21" y2="18" stroke="currentColor" stroke-width="2"/>
                </svg>
            </button>
        </div>
    </div>

    <!-- Mobile Menu -->
    <div class="mobile-menu" id="mobileMenu">
        <!-- 一级菜单 -->
        <ul class="mobile-nav-menu" id="mobileMenuLevel1">
            <li><a href="/" class="mobile-nav-link">首页</a></li>
                        <li>
                                    <a href="javascript:void(0);" class="mobile-nav-link has-submenu" data-typeid="3" data-typename="产品">
                        产品                        <svg class="arrow-icon" viewBox="0 0 24 24" fill="none" style="width: 16px; height: 16px; float: right; margin-top: 8px;">
                            <path d="M9 18l6-6-6-6" stroke="currentColor" stroke-width="2"/>
                        </svg>
                    </a>
                            </li>
                        <li>
                                    <a href="javascript:void(0);" class="mobile-nav-link has-submenu" data-typeid="4" data-typename="应用">
                        应用                        <svg class="arrow-icon" viewBox="0 0 24 24" fill="none" style="width: 16px; height: 16px; float: right; margin-top: 8px;">
                            <path d="M9 18l6-6-6-6" stroke="currentColor" stroke-width="2"/>
                        </svg>
                    </a>
                            </li>
                        <li>
                                    <a href="javascript:void(0);" class="mobile-nav-link has-submenu" data-typeid="31" data-typename="设计与开发">
                        设计与开发                        <svg class="arrow-icon" viewBox="0 0 24 24" fill="none" style="width: 16px; height: 16px; float: right; margin-top: 8px;">
                            <path d="M9 18l6-6-6-6" stroke="currentColor" stroke-width="2"/>
                        </svg>
                    </a>
                            </li>
                        <li>
                                    <a href="/index.php?m=home&c=Lists&a=index&tid=19" class="mobile-nav-link">电感式编码器百科</a>
                            </li>
                        <li>
                                    <a href="javascript:void(0);" class="mobile-nav-link has-submenu" data-typeid="2" data-typename="新闻中心">
                        新闻中心                        <svg class="arrow-icon" viewBox="0 0 24 24" fill="none" style="width: 16px; height: 16px; float: right; margin-top: 8px;">
                            <path d="M9 18l6-6-6-6" stroke="currentColor" stroke-width="2"/>
                        </svg>
                    </a>
                            </li>
                        <li>
                                    <a href="javascript:void(0);" class="mobile-nav-link has-submenu" data-typeid="73" data-typename="支持与服务">
                        支持与服务                        <svg class="arrow-icon" viewBox="0 0 24 24" fill="none" style="width: 16px; height: 16px; float: right; margin-top: 8px;">
                            <path d="M9 18l6-6-6-6" stroke="currentColor" stroke-width="2"/>
                        </svg>
                    </a>
                            </li>
                        <li>
                                    <a href="javascript:void(0);" class="mobile-nav-link has-submenu" data-typeid="1" data-typename="关于英达森斯">
                        关于英达森斯                        <svg class="arrow-icon" viewBox="0 0 24 24" fill="none" style="width: 16px; height: 16px; float: right; margin-top: 8px;">
                            <path d="M9 18l6-6-6-6" stroke="currentColor" stroke-width="2"/>
                        </svg>
                    </a>
                            </li>
                    </ul>

                <div class="mobile-submenu" id="submenu-3" style="display: none;">
            <div class="submenu-header">
                <a href="javascript:void(0);" class="submenu-back">
                    <svg viewBox="0 0 24 24" fill="none" style="width: 20px; height: 20px;">
                        <path d="M15 18l-6-6 6-6" stroke="currentColor" stroke-width="2"/>
                    </svg>
                    返回
                </a>
                <span class="submenu-title">产品</span>
            </div>
            <ul class="mobile-nav-menu submenu-list">
                                    <!-- 产品栏目：分组标题 + 直接显示子分类 -->
                    <li><a href="/index.php?m=home&c=Lists&a=index&tid=70" class="mobile-group-title mobile-group-title-link">电感式编码器芯片</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=71" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">模拟输出芯片</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=72" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">数字输出芯片</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=22" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">混合信号输出</a></li>
                                </ul>
        </div>
                <div class="mobile-submenu" id="submenu-4" style="display: none;">
            <div class="submenu-header">
                <a href="javascript:void(0);" class="submenu-back">
                    <svg viewBox="0 0 24 24" fill="none" style="width: 20px; height: 20px;">
                        <path d="M15 18l-6-6 6-6" stroke="currentColor" stroke-width="2"/>
                    </svg>
                    返回
                </a>
                <span class="submenu-title">应用</span>
            </div>
            <ul class="mobile-nav-menu submenu-list">
                                    <li><a href="/index.php?m=home&c=Lists&a=index&tid=98" class="mobile-nav-link">工业自动化</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=64" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 伺服与自动化</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=91" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 精密量具与仪器</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=92" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 智能仪表与计量</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=99" class="mobile-nav-link">具身智能与机器人</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=17" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 机器人</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=100" class="mobile-nav-link">汽车电子与线控底盘</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=66" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 汽车电子</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=101" class="mobile-nav-link">新能源与高端装备</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=94" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 航空航天与国防</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=97" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 能源与重型装备</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=102" class="mobile-nav-link">智慧医疗与智能生活</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=93" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 医疗器械</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=95" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 智能楼宇与电梯</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=96" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 消费电子与智能硬件</a></li>
                                </ul>
        </div>
                <div class="mobile-submenu" id="submenu-31" style="display: none;">
            <div class="submenu-header">
                <a href="javascript:void(0);" class="submenu-back">
                    <svg viewBox="0 0 24 24" fill="none" style="width: 20px; height: 20px;">
                        <path d="M15 18l-6-6 6-6" stroke="currentColor" stroke-width="2"/>
                    </svg>
                    返回
                </a>
                <span class="submenu-title">设计与开发</span>
            </div>
            <ul class="mobile-nav-menu submenu-list">
                                    <li><a href="/index.php?m=home&c=Lists&a=index&tid=78" class="mobile-nav-link">评测套件</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=83" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 信号模拟测试输入平台</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=79" class="mobile-nav-link">开发工具</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=80" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 芯片配置工具（ICS）</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=81" class="mobile-nav-link" style="padding-left: 40px; font-size: 13px;">- 芯片编程工具（IPS）</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=82" class="mobile-nav-link">参考设计</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=5" class="mobile-nav-link">算法赋能（AI）</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=32" class="mobile-nav-link">iCoil Studio PCB线圈设计平台</a></li>
                                </ul>
        </div>
                <div class="mobile-submenu" id="submenu-2" style="display: none;">
            <div class="submenu-header">
                <a href="javascript:void(0);" class="submenu-back">
                    <svg viewBox="0 0 24 24" fill="none" style="width: 20px; height: 20px;">
                        <path d="M15 18l-6-6 6-6" stroke="currentColor" stroke-width="2"/>
                    </svg>
                    返回
                </a>
                <span class="submenu-title">新闻中心</span>
            </div>
            <ul class="mobile-nav-menu submenu-list">
                                    <li><a href="/index.php?m=home&c=Lists&a=index&tid=10" class="mobile-nav-link">公司动态</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=11" class="mobile-nav-link">行业资讯</a></li>
                                </ul>
        </div>
                <div class="mobile-submenu" id="submenu-73" style="display: none;">
            <div class="submenu-header">
                <a href="javascript:void(0);" class="submenu-back">
                    <svg viewBox="0 0 24 24" fill="none" style="width: 20px; height: 20px;">
                        <path d="M15 18l-6-6 6-6" stroke="currentColor" stroke-width="2"/>
                    </svg>
                    返回
                </a>
                <span class="submenu-title">支持与服务</span>
            </div>
            <ul class="mobile-nav-menu submenu-list">
                                    <li><a href="/index.php?m=home&c=Lists&a=index&tid=74" class="mobile-nav-link">文档中心</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=75" class="mobile-nav-link">工具下载</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=76" class="mobile-nav-link">技术支持</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=77" class="mobile-nav-link">常见问题</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=103" class="mobile-nav-link">视频专区</a></li>
                                </ul>
        </div>
                <div class="mobile-submenu" id="submenu-1" style="display: none;">
            <div class="submenu-header">
                <a href="javascript:void(0);" class="submenu-back">
                    <svg viewBox="0 0 24 24" fill="none" style="width: 20px; height: 20px;">
                        <path d="M15 18l-6-6 6-6" stroke="currentColor" stroke-width="2"/>
                    </svg>
                    返回
                </a>
                <span class="submenu-title">关于英达森斯</span>
            </div>
            <ul class="mobile-nav-menu submenu-list">
                                    <li><a href="/index.php?m=home&c=Lists&a=index&tid=8" class="mobile-nav-link">公司简介</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=9" class="mobile-nav-link">简历投递</a></li>
                                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=30" class="mobile-nav-link">联系我们</a></li>
                                </ul>
        </div>
            </div>
</header>

<script>
// Modern Header JavaScript
document.addEventListener('DOMContentLoaded', function() {
    // Fix nav highlighting - use setTimeout to ensure dropdown items are rendered
    setTimeout(function() {
        var navLinks = document.querySelectorAll('.nav-menu .nav-link');
        navLinks.forEach(function(link) { link.classList.remove('active'); });
        var currentUrl = window.location.href;
        var tidMatch = currentUrl.match(/[?&]tid=(\d+)/);
        var aidMatch = currentUrl.match(/[?&]aid=(\d+)/);
        var currentTid = tidMatch ? parseInt(tidMatch[1]) : 0;
        // 视频专区：伪静态 /video-zone 或播放控制器 /home/Video/ 均无 tid 参数
        if (!currentTid && /\/video-zone|\/home\/Video\/|[?&]c=Video(&|$)/i.test(currentUrl)) currentTid = 103;
        // If aid present (View page), get tid from breadcrumb
        if (!currentTid && aidMatch) {
            var typeLink = document.querySelector('.idx-hero-breadcrumb a:last-child, .breadcrumb a:last-child');
            if (typeLink) {
                var href = typeLink.getAttribute('href') || '';
                var m = href.match(/tid=(\d+)/);
                if (m) currentTid = parseInt(m[1]);
            }
        }
        if (currentTid > 0) {
            // First try direct match with top-level nav links
            var matched = false;
            navLinks.forEach(function(link) {
                if (matched) return;
                var href = link.getAttribute('href') || '';
                var m = href.match(/tid=(\d+)/);
                if (m && parseInt(m[1]) === currentTid) {
                    link.classList.add('active');
                    matched = true;
                }
            });
            // If no direct match, find in dropdown items and highlight parent nav
            if (!matched) {
                var dropdownLinks = document.querySelectorAll('.tree-level1-link, .tree-level2-link');
                dropdownLinks.forEach(function(dl) {
                    if (matched) return;
                    var href = dl.getAttribute('href') || '';
                    var m = href.match(/tid=(\d+)/);
                    if (m && parseInt(m[1]) === currentTid) {
                        var parentNavItem = dl.closest('.nav-item');
                        if (parentNavItem) {
                            var parentLink = parentNavItem.querySelector('.nav-link');
                            if (parentLink) {
                                parentLink.classList.add('active');
                                matched = true;
                            }
                        }
                    }
                });
            }
        }
    }, 100);

    const header = document.getElementById('modernHeader');
    const mobileMenuToggle = document.getElementById('mobileMenuToggle');
    const mobileMenu = document.getElementById('mobileMenu');

    // Header scroll effect
    let lastScrollTop = 0;
    window.addEventListener('scroll', function() {
        const scrollTop = window.pageYOffset || document.documentElement.scrollTop;

        if (scrollTop > 50) {
            header.classList.add('scrolled');
        } else {
            header.classList.remove('scrolled');
        }

        lastScrollTop = scrollTop;
    });

    // Mobile menu toggle
    mobileMenuToggle.addEventListener('click', function() {
        mobileMenu.classList.toggle('active');
        const isActive = mobileMenu.classList.contains('active');
        this.setAttribute('aria-expanded', isActive ? 'true' : 'false');

        // Toggle icon
        const icon = this.querySelector('svg');
        if (isActive) {
            icon.innerHTML = '<line x1="18" y1="6" x2="6" y2="18" stroke="currentColor" stroke-width="2"/><line x1="6" y1="6" x2="18" y2="18" stroke="currentColor" stroke-width="2"/>';
        } else {
            icon.innerHTML = '<line x1="3" y1="6" x2="21" y2="6" stroke="currentColor" stroke-width="2"/><line x1="3" y1="12" x2="21" y2="12" stroke="currentColor" stroke-width="2"/><line x1="3" y1="18" x2="21" y2="18" stroke="currentColor" stroke-width="2"/>';
        }
    });

    // Close mobile menu when clicking outside
    document.addEventListener('click', function(e) {
        if (!header.contains(e.target)) {
            mobileMenu.classList.remove('active');
            mobileMenuToggle.setAttribute('aria-expanded', 'false');
            const icon = mobileMenuToggle.querySelector('svg');
            icon.innerHTML = '<line x1="3" y1="6" x2="21" y2="6" stroke="currentColor" stroke-width="2"/><line x1="3" y1="12" x2="21" y2="12" stroke="currentColor" stroke-width="2"/><line x1="3" y1="18" x2="21" y2="18" stroke="currentColor" stroke-width="2"/>';
            
            // 关闭所有二级菜单
            document.querySelectorAll('.mobile-submenu').forEach(function(submenu) {
                submenu.style.display = 'none';
            });
        }
    });

    // 手机端二级菜单功能
    const submenuLinks = document.querySelectorAll('.mobile-nav-link.has-submenu');
    const submenuBacks = document.querySelectorAll('.submenu-back');

    // 点击有子菜单的一级菜单项
    submenuLinks.forEach(function(link) {
        link.addEventListener('click', function(e) {
            e.preventDefault();
            e.stopPropagation();
            
            const typeid = this.getAttribute('data-typeid');
            const submenu = document.getElementById('submenu-' + typeid);
            
            if (submenu) {
                // 隐藏所有其他二级菜单
                document.querySelectorAll('.mobile-submenu').forEach(function(menu) {
                    if (menu !== submenu) {
                        menu.style.display = 'none';
                    }
                });
                
                // 显示当前二级菜单
                submenu.style.display = 'block';
                
                // 添加滑入动画
                setTimeout(function() {
                    submenu.style.animation = 'slideInRight 0.3s ease';
                }, 10);
            }
        });
    });

    // 点击返回按钮
    submenuBacks.forEach(function(back) {
        back.addEventListener('click', function(e) {
            e.preventDefault();
            e.stopPropagation();
            
            const submenu = this.closest('.mobile-submenu');
            if (submenu) {
                // 添加滑出动画
                submenu.style.animation = 'slideOutRight 0.3s ease';
                
                // 动画结束后隐藏
                setTimeout(function() {
                    submenu.style.display = 'none';
                }, 300);
            }
        });
    });

    // 添加滑出动画
    const style = document.createElement('style');
    style.textContent = `
        @keyframes slideOutRight {
            from {
                transform: translateX(0);
            }
            to {
                transform: translateX(100%);
            }
        }
    `;
    document.head.appendChild(style);

    // Active link highlighting - 基于URL的tid参数
    (function() {
        // 获取当前页面的tid
        const urlParams = new URLSearchParams(window.location.search);
        let currentTid = urlParams.get('tid');
        // 视频专区：伪静态 /video-zone 或播放控制器 /home/Video/ 均无 tid 参数
        if (!currentTid && /\/video-zone|\/home\/Video\/|[?&]c=Video(&|$)/i.test(window.location.href)) currentTid = 103;
        
        // 获取所有导航链接
        const navLinks = document.querySelectorAll('.nav-link');
        
        // 先移除所有现有的active类（避免eyou:eq产生的active）
        navLinks.forEach(link => link.classList.remove('active'));
        
        // 定义顶级菜单tid映射（子分类tid -> 父级菜单tid）
        // 产品与服务(tid=3): 芯片(67+), 定制服务, 设计工具, 参考设计
        // 应用(tid=4): 机器人, 伺服与自动化, 汽车电子
        // 设计资源(tid=31): 文档&工具, 算法赋能, iCoil Studio
        // 关于英达森斯(tid=1): 公司简介, 新闻, 简历投递, 联系我们
        // 电感编码器百科(tid=19): 无子分类
        
        function getParentNavTid(tid) {
            tid = parseInt(tid);
            // 产品与服务子分类 -> 3 (67-72, 78-80)
            if ([67,68,69,70,71,72,78,79,80].includes(tid)) return '3';
            // 支持与服务 -> 73 (子栏目74-77 及视频专区103)
            if ([73,74,75,76,77,103].includes(tid)) return '73';
            // 应用子分类 -> 4
            if ([91,92,93,94,95,96,97,98,99,100].includes(tid)) return '4';
            // 设计资源子分类 -> 31
            if ([101,102,104,105,106,107,108,109,110].includes(tid)) return '31';
            // 关于英达森斯子分类 -> 1
            if ([111,112,113,114,115,116,117,118,119,120].includes(tid)) return '1';
            // 电感编码器百科 -> 19
            if (tid === 19) return '19';
            // 本身就是顶级菜单
            if ([1,3,4,19,31,73].includes(tid)) return String(tid);
            return null;
        }
        
        // 确定当前页面应该激活的顶级菜单tid
        const targetNavTid = currentTid ? getParentNavTid(currentTid) : null;
        
        // 为匹配的导航链接添加active类
        navLinks.forEach(link => {
            const linkHref = link.getAttribute('href') || '';
            const match = linkHref.match(/tid=(\d+)/);
            if (match && targetNavTid && match[1] === targetNavTid) {
                link.classList.add('active');
            }
        });
    })();

    // Dropdown menu functionality
    const dropdownItems = document.querySelectorAll('.has-dropdown');
    let dropdownTimeout;
    let activeDropdown = null;

    function showDropdown(dropdown) {
        // 隐藏其他下拉菜单
        if (activeDropdown && activeDropdown !== dropdown) {
            hideDropdown(activeDropdown);
        }
        
        clearTimeout(dropdownTimeout);
        dropdown.style.opacity = '1';
        dropdown.style.visibility = 'visible';
        dropdown.style.transform = 'translateY(0)';
        activeDropdown = dropdown;
    }

    function hideDropdown(dropdown) {
        dropdown.style.opacity = '0';
        dropdown.style.visibility = 'hidden';
        dropdown.style.transform = 'translateY(-10px)';
        if (activeDropdown === dropdown) {
            activeDropdown = null;
        }
    }

    dropdownItems.forEach(item => {
        const dropdown = item.querySelector('.nav-dropdown');
        if (!dropdown) return;

        // 创建一个更大的感应区域
        const hoverZone = document.createElement('div');
        hoverZone.style.cssText = `
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: -20px;
            z-index: 9999;
            pointer-events: none;
        `;
        item.style.position = 'relative';
        item.appendChild(hoverZone);

        item.addEventListener('mouseenter', function(e) {
            showDropdown(dropdown);
        });

        item.addEventListener('mouseleave', function(e) {
            // 检查鼠标是否移动到下拉菜单区域
            const rect = dropdown.getBoundingClientRect();
            const mouseX = e.clientX;
            const mouseY = e.clientY;
            
            // 如果鼠标在下拉菜单范围内或接近范围内，延迟隐藏
            if (mouseX >= rect.left - 50 && mouseX <= rect.right + 50 && 
                mouseY >= rect.top - 20 && mouseY <= rect.bottom + 20) {
                return;
            }
            
            dropdownTimeout = setTimeout(() => {
                hideDropdown(dropdown);
            }, 300);
        });

        // 下拉菜单本身的鼠标事件
        dropdown.addEventListener('mouseenter', function() {
            clearTimeout(dropdownTimeout);
            showDropdown(dropdown);
        });

        dropdown.addEventListener('mouseleave', function(e) {
            // 检查鼠标是否移回到父菜单项
            const parentRect = item.getBoundingClientRect();
            const mouseX = e.clientX;
            const mouseY = e.clientY;
            
            if (mouseX >= parentRect.left && mouseX <= parentRect.right && 
                mouseY >= parentRect.top && mouseY <= parentRect.bottom) {
                return;
            }
            
            dropdownTimeout = setTimeout(() => {
                hideDropdown(dropdown);
            }, 300);
        });
    });

    // 点击其他地方隐藏下拉菜单
    document.addEventListener('click', function(e) {
        if (activeDropdown && !e.target.closest('.has-dropdown')) {
            hideDropdown(activeDropdown);
        }
    });

    // ===== Scroll Animation System =====
    (function() {
        // Auto-apply animation classes to common elements
        // NOTE: .dv-content-card and .dv-header removed — article detail content
        // must be visible immediately; tall content can fail the 0.08 intersection
        // threshold, causing "gray blank" on articles like aid=351/350/349.
        var selectors = [
            '.dropdown-card', '.category-card', '.app-card', '.news-card',
            '.product-card', '.feature-card', '.info-card',
            '.section-title', '.section-header', '.section-desc',
            '.hero-content', '.idx-hero-content'
        ];

        selectors.forEach(function(sel) {
            document.querySelectorAll(sel).forEach(function(el, i) {
                // Skip elements inside article body to prevent content disappearing
                if (el.closest('.dv-body')) return;
                if (el.classList.contains('scroll-fade-up')) return;
                el.classList.add('scroll-fade-up');
                // Add stagger delay based on position within parent
                var siblings = el.parentElement ? Array.from(el.parentElement.children).filter(function(c) { return c.classList.contains('scroll-fade-up'); }) : [];
                var idx = siblings.indexOf(el);
                if (idx >= 0 && idx < 4) {
                    el.classList.add('scroll-delay-' + (idx + 1));
                }
            });
        });

        // Intersection Observer for scroll animations
        if ('IntersectionObserver' in window) {
            var observer = new IntersectionObserver(function(entries) {
                entries.forEach(function(entry) {
                    if (entry.isIntersecting) {
                        entry.target.classList.add('visible');
                        observer.unobserve(entry.target);
                    }
                });
            }, {
                threshold: 0.08,
                rootMargin: '0px 0px -40px 0px'
            });

            document.querySelectorAll('.scroll-fade-up, .scroll-fade-left, .scroll-fade-right, .scroll-scale').forEach(function(el) {
                observer.observe(el);
            });
        } else {
            // Fallback: show all
            document.querySelectorAll('.scroll-fade-up, .scroll-fade-left, .scroll-fade-right, .scroll-scale').forEach(function(el) {
                el.classList.add('visible');
            });
        }
    })();

    // ===== Hero Parallax =====
    (function() {
        var heroBg = document.querySelector('.idx-hero-bg');
        if (!heroBg) return;

        var ticking = false;
        window.addEventListener('scroll', function() {
            if (!ticking) {
                requestAnimationFrame(function() {
                    var scrolled = window.pageYOffset;
                    if (scrolled < 400) {
                        heroBg.style.transform = 'translateY(' + (scrolled * 0.3) + 'px)';
                    }
                    ticking = false;
                });
                ticking = true;
            }
        }, { passive: true });
    })();

    // ===== Smooth Scroll for Anchor Links =====
    (function() {
        document.querySelectorAll('a[href^="#"]:not([href="#"]):not([href="javascript"])').forEach(function(link) {
            link.addEventListener('click', function(e) {
                var target = document.querySelector(this.getAttribute('href'));
                if (target) {
                    e.preventDefault();
                    var offset = 80;
                    var targetPos = target.getBoundingClientRect().top + window.pageYOffset - offset;
                    window.scrollTo({ top: targetPos, behavior: 'smooth' });
                }
            });
        });
    })();
});
</script><script>
if(/[?&]measure=1/.test(location.search)){
  function __m(){
    function R(sel){var e=document.querySelector(sel);if(!e)return null;var r=e.getBoundingClientRect();return {L:Math.round(r.left),R:Math.round(r.right),W:Math.round(r.width)};}
    var de=document.documentElement;
    var rows=[
      'tid='+new URLSearchParams(location.search).get('tid'),
      'inner '+window.innerWidth+' client '+de.clientWidth+' vbar '+(window.innerWidth-de.clientWidth)+' scrollW '+de.scrollWidth,
      'logo '    +JSON.stringify(R('.header-logo')),
      'navwrap '+JSON.stringify(R('.header-nav')),
      'menu '    +JSON.stringify(R('.nav-menu')),
      'actions ' +JSON.stringify(R('.header-actions')),
      'search '  +JSON.stringify(R('.search-form-inline')),
      'hc '      +JSON.stringify(R('.header-container'))
    ];
    var d=document.createElement('div');
    d.style.cssText='position:fixed;top:0;left:0;right:0;z-index:999999;background:#001100;color:#3f3;font:15px/1.6 monospace;padding:8px 12px;white-space:pre-wrap';
    d.textContent=rows.join('\n');
    document.body.appendChild(d);
  }
  if(document.readyState!=='loading')__m(); else document.addEventListener('DOMContentLoaded',__m);
  setTimeout(__m,600);
}
</script>
<script>
if(/[?&]measure=1/.test(location.search)){
  function __m(){
    function R(sel){var e=document.querySelector(sel);if(!e)return null;var r=e.getBoundingClientRect();return {L:Math.round(r.left),R:Math.round(r.right),W:Math.round(r.width)};}
    var de=document.documentElement;
    var rows=[
      'tid='+new URLSearchParams(location.search).get('tid'),
      'inner '+window.innerWidth+' client '+de.clientWidth+' vbar '+(window.innerWidth-de.clientWidth)+' scrollW '+de.scrollWidth,
      'logo '    +JSON.stringify(R('.header-logo')),
      'navwrap '+JSON.stringify(R('.header-nav')),
      'menu '    +JSON.stringify(R('.nav-menu')),
      'actions ' +JSON.stringify(R('.header-actions')),
      'search '  +JSON.stringify(R('.search-form-inline')),
      'hc '      +JSON.stringify(R('.header-container'))
    ];
    var d=document.createElement('div');
    d.style.cssText='position:fixed;top:0;left:0;right:0;z-index:999999;background:#001100;color:#3f3;font:15px/1.6 monospace;padding:8px 12px;white-space:pre-wrap';
    d.textContent=rows.join('\n');
    document.body.appendChild(d);
  }
  if(document.readyState!=='loading')__m(); else document.addEventListener('DOMContentLoaded',__m);
  setTimeout(__m,600);
}
</script>

<!-- 公用头部 end -->
<link href="/template/pc/skin/style/style.css" rel="stylesheet" media="screen" type="text/css" />

<style>
/* ===== Article Detail - Unified Style ===== */
.dv-page {
  --brand-blue: #0573C3;
  --brand-blue-hover: #0362A8;
  --brand-blue-dark: #034a8a;
  --brand-orange: #FFA505;
  --text-main: #1A1A1A;
  --text-secondary: #525252;
  --text-light: #737373;
  --bg-light: #F5F7FA;
  --bg-white: #FFFFFF;
  --border-color: #DDE4ED;
  --shadow-sm: 0 1px 2px 0 rgba(0,0,0,0.05);
  --shadow: 0 4px 12px -2px rgba(5, 115, 195, 0.08), 0 2px 4px -2px rgba(0,0,0,0.04);
  --shadow-lg: 0 12px 24px -4px rgba(5, 115, 195, 0.12), 0 4px 8px -4px rgba(0,0,0,0.06);
  --radius-sm: 6px;
  --radius: 10px;
  --radius-lg: 14px;
  background: var(--bg-light);
  min-height: calc(100vh - 200px);
  padding-bottom: 64px;
}

.dv-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

.dv-main {
  margin-top: 32px;
}

.dv-content-card {
  background: var(--bg-white);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow);
  padding: 48px;
}

.dv-header {
  margin-bottom: 32px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--border-color);
}

.dv-title {
  font-size: 32px;
  font-weight: 700;
  color: var(--text-main);
  line-height: 1.3;
  margin: 0 0 20px;
}

.dv-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  font-size: 14px;
  color: var(--text-light);
}

.dv-meta-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.dv-body {
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-secondary);
}

.dv-body img {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius);
  margin: 16px 0;
}

.dv-body table {
  width: 100%;
  border-collapse: collapse;
  margin: 16px 0;
  font-size: 14px;
}

.dv-body th,
.dv-body td {
  padding: 10px 14px;
  border: 1px solid var(--border-color);
}

.dv-body th {
  background: var(--bg-light);
  font-weight: 600;
  color: var(--text-main);
}

.dv-tags {
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid var(--border-color);
}

.dv-tags .tags-label {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-main);
  margin-right: 10px;
}

.dv-tags .tag {
  display: inline-block;
  padding: 6px 12px;
  margin: 0 8px 8px 0;
  background: var(--bg-light);
  color: var(--brand-blue);
  border-radius: var(--radius-sm);
  font-size: 13px;
  text-decoration: none;
  transition: all 0.2s;
}

.dv-tags .tag:hover {
  background: var(--brand-blue);
  color: #fff;
}

.dv-nav {
  margin-top: 32px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 16px;
  align-items: center;
}

.dv-nav a {
  color: var(--brand-blue);
  text-decoration: none;
  transition: color 0.2s;
}

.dv-nav a:hover {
  color: var(--brand-blue-hover);
  text-decoration: underline;
}

.dv-nav .prev,
.dv-nav .next {
  font-size: 14px;
  color: var(--text-secondary);
}

.dv-nav .prev a,
.dv-nav .next a {
  color: var(--brand-blue);
}

.dv-nav .back {
  text-align: center;
}

.dv-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  background: var(--bg-white);
  color: var(--brand-blue);
  border: 1px solid var(--brand-blue);
  border-radius: var(--radius-sm);
  font-size: 14px;
  text-decoration: none;
  transition: all 0.2s;
}

.dv-btn-secondary:hover {
  background: var(--brand-blue);
  color: #fff;
}

@media (max-width: 768px) {
  .dv-content-card { padding: 32px 24px; }
  .dv-title { font-size: 24px; }
  .dv-nav { grid-template-columns: 1fr; }
  .dv-nav .back { order: -1; }
}
</style>

<style>
/* ===== IDX Hero (shared component) ===== */
.idx-hero {
  position: relative;
  height: 280px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: #0a1628;
}
.idx-hero-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0.35;
  z-index: 1;
}
.idx-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(8,24,68,0.85) 0%, rgba(8,24,68,0.60) 55%, rgba(8,24,68,0.30) 100%);
  z-index: 2;
}
.idx-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,0.06) 1px, transparent 1px);
  background-size: 32px 32px;
  z-index: 3;
  pointer-events: none;
}
.idx-hero-content {
  position: relative;
  z-index: 4;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}
.idx-hero-breadcrumb {
  font-size: 13px;
  color: rgba(255,255,255,0.55);
  margin-bottom: 14px;
}
.idx-hero-breadcrumb a {
  color: rgba(255,255,255,0.55);
  text-decoration: none;
  transition: color 0.2s;
}
.idx-hero-breadcrumb a:hover {
  color: rgba(255,255,255,0.85);
}
.idx-hero-breadcrumb .sep {
  margin: 0 8px;
}
.idx-hero-breadcrumb .current {
  color: rgba(255,255,255,0.85);
}
.idx-hero-title {
  font-size: 36px;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.2;
  margin: 0 0 12px;
  letter-spacing: -0.01em;
}
.idx-hero-desc {
  font-size: 15px;
  color: rgba(255,255,255,0.82);
  line-height: 1.7;
  max-width: 580px;
  margin: 0;
}
@media (max-width: 768px) {
  .idx-hero { height: 220px; }
  .idx-hero-content { padding: 0 16px; }
  .idx-hero-title { font-size: 28px; }
  .idx-hero-desc { font-size: 14px; }
  .idx-hero-breadcrumb { font-size: 12px; margin-bottom: 10px; }
}
@media (max-width: 480px) {
  .idx-hero { height: 180px; }
  .idx-hero-content { padding: 0 12px; }
  .idx-hero-title { font-size: 22px; }
  .idx-hero-desc { font-size: 13px; }
  .idx-hero-breadcrumb { font-size: 11px; margin-bottom: 8px; }
}
</style>


<section class="idx-hero">
  <div class="idx-hero-bg" style="background-image: url('/uploads/allimg/20260808/cat/cat_aerospace.jpg');"></div>
  <div class="idx-hero-overlay"></div>
  <div class="idx-hero-content">
        <div class="idx-hero-breadcrumb">
      <a href="/">首页</a>
            <span class="sep">&gt;</span>
            <a href="/index.php?m=home&c=Lists&a=index&tid=4">应用</a>
            <span class="sep">&gt;</span>
            <a href="/index.php?m=home&c=Lists&a=index&tid=101">新能源与高端装备</a>
            <span class="sep">&gt;</span>
            <a href="/index.php?m=home&c=Lists&a=index&tid=94">航空航天与国防</a>
            <span class="sep">&gt;</span>
      <span class="current">无人机云台与吊舱</span>
          </div>
        <h1 class="idx-hero-title">无人机云台与吊舱</h1>
        <p class="idx-hero-desc">微型编码器重量不足1g，高精度位置反馈实现相机稳定和精确指向</p>
      </div>
</section>


<div class="dv-page">
  <div class="dv-container">
    <div class="dv-main">
      <article class="dv-content-card">
        <header class="dv-header">
          <h1 class="dv-title">无人机云台与吊舱</h1>
        </header>

        <div class="dv-body">
          <h2>概述</h2><p>电感式编码器为无人机云台（Gimbal）系统提供高精度位置反馈，实现相机稳定和精确指向。微型编码器重量不足1g，特别适用于无人机云台等对空间敏感的应用。</p><h2>核心需求</h2><ul><li><strong>超轻量化</strong>：编码器重量直接影响无人机续航和负载能力</li><li><strong>高带宽响应</strong>：快速补偿无人机飞行中的振动和姿态变化</li><li><strong>低延迟</strong>：微秒级延时确保云台控制的实时性</li><li><strong>抗振动</strong>：非接触式设计无机械磨损，适应高频振动环境</li></ul><h2>应用价值</h2><p>在航拍无人机中，电感式编码器确保云台在飞行过程中保持相机稳定，输出流畅的画面。在工业检测无人机中，精确的云台控制确保检测设备准确定位目标。</p>        </div>

              </article>

      <div class="dv-nav">
        <div class="prev">
                    <span>上一条：暂无</span>
                  </div>
        <div class="back">
                    <a href="/index.php?m=home&c=Lists&a=index&tid=94" class="dv-btn-secondary"><i class="iconfont icon-back"></i> 返回列表</a>
                  </div>
        <div class="next" style="text-align: right;">
                    <span>下一条：</span><a href="/index.php?m=home&c=View&a=index&aid=334" title="eVTOL电动垂直起降飞行器">eVTOL电动垂直起降飞行器</a>
                  </div>
      </div>
    </div>
  </div>
</div>

<!-- 保留百科/特殊文章脚本（兼容原有内容中的 canvas 元素） -->
<script>
document.addEventListener('DOMContentLoaded', function() {
  var canvasEls = document.querySelectorAll('.sensor-canvas, .encoder-canvas, [class*="canvas"]');
  if (!canvasEls.length) return;
  canvasEls.forEach(function(canvas) {
    if (!canvas.getContext) return;
    var ctx = canvas.getContext('2d');
    var dpr = window.devicePixelRatio || 1;
    var rect = canvas.getBoundingClientRect();
    canvas.width = rect.width * dpr;
    canvas.height = rect.height * dpr;
    ctx.scale(dpr, dpr);
    ctx.clearRect(0, 0, rect.width, rect.height);
    ctx.fillStyle = canvas.dataset.color || '#0573C3';
    ctx.beginPath();
    ctx.arc(rect.width/2, rect.height/2, Math.min(rect.width, rect.height)/4, 0, Math.PI*2);
    ctx.fill();
  });
});
</script>

<script>
// Guard: 仅在包含 sensorCanvas 的百科页面执行（避免应用场景文章报错）
if (document.getElementById('sensorCanvas') && document.getElementById('scopeCanvas')) {
    // --- UI Logic ---
    function switchTab(tabId, btnElement) {
        document.querySelectorAll('.tab-content').forEach(el => el.classList.remove('active'));
        document.querySelectorAll('.tab-btn').forEach(el => el.classList.remove('active'));
        document.getElementById(tabId).classList.add('active');
        btnElement.classList.add('active');
    }

    // --- Setup ---
    const ctxSensor = document.getElementById('sensorCanvas').getContext('2d');
    const ctxScope = document.getElementById('scopeCanvas').getContext('2d');
    
    let state = {
        angle: 0,       
        speed: 60,      
        polePairs: 8, 
        mode: 'ABZ',    
        isRunning: true,
        lastTime: 0,
        carrierPhase: 0,
        frameCount: 0 // For SPI packet simulation
    };

    // --- DOM ---
    const els = {
        pole: document.getElementById('poleControl'),
        poleDisp: document.getElementById('poleDisplay'),
        speed: document.getElementById('speedControl'),
        rpmDisp: document.getElementById('rpmValue'),
        resBits: document.getElementById('totalResBits'),
        ch2Label: document.getElementById('scopeCh2Label'),
        mechShift: document.getElementById('mechShiftDisplay'),
        offsetText: document.getElementById('offsetText'),
        offsetN: document.getElementById('offsetN'),
        explainMode: document.getElementById('explainMode')
    };

    // --- Interaction ---
    els.pole.addEventListener('input', (e) => {
        const idx = parseInt(e.target.value);
        state.polePairs = Math.pow(2, idx);
        
        els.poleDisp.innerText = state.polePairs;
        updateCalculations();
        scopeBuffer = []; 
    });

    els.speed.addEventListener('input', (e) => {
        state.speed = parseInt(e.target.value);
        els.rpmDisp.innerText = state.speed;
        state.isRunning = state.speed > 0;
    });

    function setMode(mode) {
        state.mode = mode;
        document.querySelectorAll('.btn').forEach(b => b.classList.remove('active'));
        event.target.classList.add('active');
        
        if (mode === 'ABZ') {
            els.ch2Label.innerText = "CH2: Output (ABZ Quadrature)";
            els.explainMode.innerText = "ABZ 增量波形";
        }
        else if (mode === 'SINCOS') {
            els.ch2Label.innerText = "CH2: Output (Demodulated Analog)";
            els.explainMode.innerText = "Sin/Cos 模拟波形";
        }
        else if (mode === 'SPI') {
            els.ch2Label.innerText = "CH2: SPI Data Stream (MISO)";
            els.explainMode.innerText = "SPI 数字串行数据包";
        }
    }

    function updateCalculations() {
        const totalBits = 16 + Math.log2(state.polePairs);
        els.resBits.innerText = totalBits.toFixed(2) + " bit";

        const mechShift = 90.0 / state.polePairs;
        const shiftStr = mechShift.toFixed(2) + "°";
        els.mechShift.innerText = shiftStr;
        els.offsetText.innerText = shiftStr;
        els.offsetN.innerText = state.polePairs;
    }

    // --- Draw Sensor ---
    function drawSensor() {
        const w = 340, h = 340;
        const cx = w/2, cy = h/2;
        ctxSensor.clearRect(0, 0, w, h);
        ctxSensor.save();
        ctxSensor.translate(cx, cy);

        // PCB
        ctxSensor.beginPath(); ctxSensor.arc(0,0,165,0,Math.PI*2); 
        ctxSensor.strokeStyle='#ddd'; ctxSensor.lineWidth=1; ctxSensor.stroke();

        // Tx Coil
        ctxSensor.beginPath(); ctxSensor.arc(0,0,160,0,Math.PI*2); ctxSensor.arc(0,0,155,0,Math.PI*2);
        ctxSensor.strokeStyle='#333'; ctxSensor.lineWidth=1.5; ctxSensor.stroke();

        // Rx Settings
        let rxLineWidth = 2;
        if (state.polePairs >= 16) rxLineWidth = 1.5;
        if (state.polePairs >= 32) rxLineWidth = 1;
        if (state.polePairs >= 64) rxLineWidth = 0.5;

        let step = 1; 
        if (state.polePairs >= 32) step = 0.5;

        const rBase = 115; const rVar = 25;

        // 1. Rx SIN
        ctxSensor.save(); 
        ctxSensor.beginPath();
        for(let i=0; i <= 360; i+=step) {
            let rad = i * Math.PI/180;
            let r = rBase + rVar * Math.sin(state.polePairs * rad);
            let x = r * Math.cos(rad); let y = r * Math.sin(rad);
            if(i===0) ctxSensor.moveTo(x,y); else ctxSensor.lineTo(x,y);
        }
        ctxSensor.closePath();
        ctxSensor.strokeStyle = '#e67e22'; 
        ctxSensor.lineWidth = rxLineWidth;
        ctxSensor.stroke();
        ctxSensor.restore(); 

        // 2. Rx COS
        let mechShiftDeg = 90.0 / state.polePairs;
        ctxSensor.save(); 
        ctxSensor.rotate(mechShiftDeg * Math.PI / 180); 

        ctxSensor.beginPath();
        for(let i=0; i <= 360; i+=step) {
            let rad = i * Math.PI/180;
            let r = rBase + rVar * Math.sin(state.polePairs * rad);
            let x = r * Math.cos(rad); let y = r * Math.sin(rad);
            if(i===0) ctxSensor.moveTo(x,y); else ctxSensor.lineTo(x,y);
        }
        ctxSensor.closePath();
        ctxSensor.strokeStyle = '#00b894'; 
        ctxSensor.globalAlpha = 0.8; 
        ctxSensor.lineWidth = rxLineWidth;
        ctxSensor.stroke();
        ctxSensor.restore(); 

        // 3. Target
        ctxSensor.rotate(state.angle * Math.PI/180);
        ctxSensor.fillStyle = 'rgba(149, 165, 166, 0.85)'; 
        ctxSensor.strokeStyle = '#7f8c8d';
        ctxSensor.lineWidth = rxLineWidth;
        
        ctxSensor.beginPath();
        const sectorSize = 360 / (2 * state.polePairs);
        for(let k=0; k < state.polePairs; k++) {
            let startDeg = k * (360 / state.polePairs);
            let startRad = startDeg * Math.PI / 180;
            let endRad = (startDeg + sectorSize) * Math.PI / 180;
            ctxSensor.moveTo(0,0);
            ctxSensor.arc(0,0,160, startRad, endRad); 
            ctxSensor.lineTo(0,0);
        }
        ctxSensor.fill(); ctxSensor.stroke();
        
        ctxSensor.beginPath(); ctxSensor.arc(0,0,40,0,Math.PI*2); ctxSensor.fillStyle='#fff'; ctxSensor.fill(); ctxSensor.stroke();
        ctxSensor.restore();
    }

    // --- Scope ---
    let scopeBuffer = [];
    const MAX_BUFFER = 600;

    function updateScope() {
        let elecAngleRad = (state.angle * state.polePairs * Math.PI / 180);
        
        state.carrierPhase += 1.2;
        let carrier = Math.sin(state.carrierPhase);
        let modulation = Math.sin(elecAngleRad); 
        let rawSignal = carrier * modulation;

        let procSignal = 0;
        
        // --- Signal Processing ---
        if (state.mode === 'SINCOS') {
            procSignal = modulation; 
        } 
        else if (state.mode === 'ABZ') {
            procSignal = modulation > 0 ? 0.8 : -0.8;
        } 
        else if (state.mode === 'SPI') {
            // === SPI Digital Simulation ===
            state.frameCount = (state.frameCount + 1) % 80; 
            
            // Added space around '<' to fix syntax highlighting issues
            if (state.frameCount < 40) { 
                let bit = (state.frameCount * 7) % 3; 
                procSignal = (bit < 2) ? 0.8 : 0; 
            } else {
                procSignal = 0; 
            }
        }

        scopeBuffer.push({ raw: rawSignal, proc: procSignal });
        
        // Added space around '<'
        if (scopeBuffer.length > MAX_BUFFER) scopeBuffer.shift();

        const w = 600, h = 200;
        const hHalf = h/2;

        ctxScope.fillStyle = '#000'; ctxScope.fillRect(0,0,w,h);
        ctxScope.strokeStyle = '#333'; ctxScope.lineWidth = 1;
        ctxScope.beginPath(); ctxScope.moveTo(0, hHalf); ctxScope.lineTo(w, hHalf); ctxScope.stroke();

        // Added space around '<'
        if (scopeBuffer.length < 2) return;

        // CH1 (Top)
        ctxScope.beginPath();
        ctxScope.strokeStyle = '#ffeb3b';
        ctxScope.lineWidth = 1;
        // Added space around '<'
        for(let i=0; i < scopeBuffer.length; i++) {
            let y = 50 - (scopeBuffer[i].raw * 40);
            if(i===0) ctxScope.moveTo(i, y); else ctxScope.lineTo(i, y);
        }
        ctxScope.stroke();

        // CH2 (Bottom)
        ctxScope.beginPath();
        ctxScope.strokeStyle = '#00d2ff';
        ctxScope.lineWidth = 2;
        // Added space around '<'
        for(let i=0; i < scopeBuffer.length; i++) {
            let val = scopeBuffer[i].proc;
            let y = 150 - (val * 40);

            if ((state.mode === 'ABZ' || state.mode === 'SPI') && i > 0) {
                let prevVal = scopeBuffer[i-1].proc;
                let prevY = 150 - (prevVal * 40);
                if (Math.abs(y - prevY) > 5) {
                    ctxScope.lineTo(i, prevY); 
                    ctxScope.lineTo(i, y);
                } else {
                    ctxScope.lineTo(i, y);
                }
            } else {
                if(i===0) ctxScope.moveTo(i, y); else ctxScope.lineTo(i, y);
            }
        }
        ctxScope.stroke();
    }

    function animate(timestamp) {
        if (!state.lastTime) state.lastTime = timestamp;
        const delta = timestamp - state.lastTime;
        state.lastTime = timestamp;

        if (state.isRunning) {
            let degPerMs = (state.speed * 360) / 60000;
            state.angle = (state.angle + degPerMs * delta) % 360;
        }

        drawSensor();
        updateScope();
        requestAnimationFrame(animate);
    }

    updateCalculations();
    requestAnimationFrame(animate);
}
</script>
<script>
// Guard: 仅在包含机械角度交互元素的百科页面执行
if (document.getElementById('mech-angle') && document.getElementById('mechanical-canvas')) {
        // 获取DOM元素
        const mechAngleSlider = document.getElementById('mech-angle');
        const polePairsSlider = document.getElementById('pole-pairs');
        const elecAngleInput = document.getElementById('elec-angle');
        const mechAngleValue = document.getElementById('mech-angle-value');
        const polePairsValue = document.getElementById('pole-pairs-value');
        const elecAngleValue = document.getElementById('elec-angle-value');
        
        const mechCanvas = document.getElementById('mechanical-canvas');
        const elecCanvas = document.getElementById('electrical-canvas');
        const mechCtx = mechCanvas.getContext('2d');
        const elecCtx = elecCanvas.getContext('2d');
        
        // 初始化
        updateValues();
        
        // 事件监听
        mechAngleSlider.addEventListener('input', updateValues);
        polePairsSlider.addEventListener('input', updateValues);
        
        function updateValues() {
            const mechAngle = parseInt(mechAngleSlider.value);
            const polePairs = parseInt(polePairsSlider.value);
            const elecAngle = (mechAngle * polePairs) % 360;
            
            mechAngleValue.textContent = mechAngle;
            polePairsValue.textContent = polePairs;
            elecAngleValue.textContent = elecAngle;
            elecAngleInput.value = elecAngle;
            
            updateVisualization();
        }
        
        function updateVisualization() {
            const mechAngle = parseInt(mechAngleSlider.value);
            const polePairs = parseInt(polePairsSlider.value);
            const elecAngle = (mechAngle * polePairs) % 360;
            
            drawMechanicalDial(mechAngle);
            drawElectricalWave(elecAngle, polePairs);
        }
        
        function drawMechanicalDial(angle) {
            const width = mechCanvas.width;
            const height = mechCanvas.height;
            const centerX = width / 2;
            const centerY = height / 2;
            const radius = Math.min(width, height) * 0.35;
            
            mechCtx.clearRect(0, 0, width, height);
            
            // 绘制外圆
            mechCtx.beginPath();
            mechCtx.arc(centerX, centerY, radius, 0, Math.PI * 2);
            mechCtx.strokeStyle = '#1a6bc4';
            mechCtx.lineWidth = 3;
            mechCtx.stroke();
            
            // 绘制刻度
            for (let i = 0; i < 12; i++) {
                const tickAngle = i * 30 * Math.PI / 180;
                const startX = centerX + (radius - 12) * Math.cos(tickAngle);
                const startY = centerY + (radius - 12) * Math.sin(tickAngle);
                const endX = centerX + radius * Math.cos(tickAngle);
                const endY = centerY + radius * Math.sin(tickAngle);
                
                mechCtx.beginPath();
                mechCtx.moveTo(startX, startY);
                mechCtx.lineTo(endX, endY);
                mechCtx.strokeStyle = '#2c3e50';
                mechCtx.lineWidth = 2;
                mechCtx.stroke();
                
                // 绘制数字
                const textX = centerX + (radius - 30) * Math.cos(tickAngle);
                const textY = centerY + (radius - 30) * Math.sin(tickAngle);
                mechCtx.font = '14px Arial';
                mechCtx.fillStyle = '#2c3e50';
                mechCtx.textAlign = 'center';
                mechCtx.textBaseline = 'middle';
                mechCtx.fillText(i * 30, textX, textY);
            }
            
            // 绘制指针
            const pointerAngle = (angle - 90) * Math.PI / 180;
            mechCtx.beginPath();
            mechCtx.moveTo(centerX, centerY);
            mechCtx.lineTo(
                centerX + radius * 0.8 * Math.cos(pointerAngle),
                centerY + radius * 0.8 * Math.sin(pointerAngle)
            );
            mechCtx.strokeStyle = '#e74c3c';
            mechCtx.lineWidth = 4;
            mechCtx.stroke();
            
            // 绘制中心点
            mechCtx.beginPath();
            mechCtx.arc(centerX, centerY, 6, 0, Math.PI * 2);
            mechCtx.fillStyle = '#e74c3c';
            mechCtx.fill();
        }
        
        function drawElectricalWave(angle, polePairs) {
            const width = elecCanvas.width;
            const height = elecCanvas.height;
            
            elecCtx.clearRect(0, 0, width, height);
            
            // 绘制坐标轴
            elecCtx.beginPath();
            elecCtx.moveTo(25, height / 2);
            elecCtx.lineTo(width - 25, height / 2);
            elecCtx.strokeStyle = '#5d7a9c';
            elecCtx.lineWidth = 1.5;
            elecCtx.stroke();
            
            elecCtx.beginPath();
            elecCtx.moveTo(25, 25);
            elecCtx.lineTo(25, height - 25);
            elecCtx.stroke();
            
            // 绘制正弦波
            const amplitude = height * 0.3;
            const frequency = polePairs;
            const phase = angle * Math.PI / 180;
            
            elecCtx.beginPath();
            for (let x = 0; x < width - 50; x++) {
                const t = (x / (width - 50)) * 2 * Math.PI * frequency;
                const y = amplitude * Math.sin(t);
                
                if (x === 0) {
                    elecCtx.moveTo(x + 25, height / 2 - y);
                } else {
                    elecCtx.lineTo(x + 25, height / 2 - y);
                }
            }
            
            elecCtx.strokeStyle = '#1a6bc4';
            elecCtx.lineWidth = 3;
            elecCtx.stroke();
            
            // 标记当前相位点 - 修复红色点位置
            // 计算红色点在波形上的正确位置
            const effectiveAngle = angle % 360;
            const markerX = 25 + (effectiveAngle / 360) * (width - 50) / frequency;
            const markerY = height / 2 - amplitude * Math.sin(effectiveAngle * Math.PI / 180);
            
            elecCtx.beginPath();
            elecCtx.arc(markerX, markerY, 7, 0, Math.PI * 2);
            elecCtx.fillStyle = '#e74c3c';
            elecCtx.fill();
            
            // 添加标签
            elecCtx.font = '14px Arial';
            elecCtx.fillStyle = '#2c3e50';
            elecCtx.textAlign = 'left';
            elecCtx.fillText('0°', 20, height / 2 + 20);
            elecCtx.textAlign = 'right';
            elecCtx.fillText('360°', width - 5, height / 2 + 20);
        }
}
</script>
<!--网站公用底部 begin -->
<style>
/* ========== Footer Layout ========== */
.simple-footer {
    background: #f5f7fa;
    color: #333;
    position: relative;
    overflow: hidden;
    border-top: 3px solid #0573C3;
}

.footer-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 48px 32px 0;
    position: relative;
    z-index: 1;
}

/* --- Top: Company Info + Nav Links --- */
.footer-top {
    display: grid;
    grid-template-columns: 1.2fr 2fr;
    gap: 48px;
    padding-bottom: 40px;
    border-bottom: 1px solid #e0e4ea;
}

/* Company Info Column */
.footer-brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
}

.footer-brand-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.footer-brand-logo img {
    height: 56px;
    width: auto;
    object-fit: contain;
}

.footer-brand-logo .brand-text {
    font-size: 20px;
    font-weight: 700;
    color: #1a1a2e;
    letter-spacing: 0.5px;
}

/* Phone Number */
.footer-phone {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 8px;
}

.footer-phone svg {
    width: 20px;
    height: 20px;
    color: #0573C3;
    flex-shrink: 0;
    stroke-width: 2;
}

.footer-phone span {
    font-size: 22px;
    font-weight: 600;
    color: #1a1a2e;
    letter-spacing: 1px;
}

/* --- Nav Columns --- */
.footer-nav {
    display: grid;
    grid-template-columns: 1fr 1.4fr 1fr 1fr 1fr;
    gap: 0;
}

.footer-nav-col {
    padding: 0 15px;
}

.footer-nav-col:first-child {
    padding-left: 0;
}

.footer-nav-col:last-child {
    padding-right: 0;
}

.footer-nav-col h4 {
    font-size: 15px;
    font-weight: 600;
    color: #1a1a2e;
    margin: 0 0 16px;
    letter-spacing: 0.3px;
}

.footer-nav-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-nav-links li {
    margin: 0;
    padding: 5px 0;
}

.footer-nav-links a {
    color: #5a6270;
    text-decoration: none;
    font-size: 14px;
    transition: color 0.2s ease;
    display: inline-block;
    white-space: nowrap;
}

.footer-nav-links a:hover {
    color: #0573C3;
}

/* Footer产品分类分组标题 */
.footer-nav-links .footer-group-title {
    font-size: 12px;
    font-weight: 700;
    color: #334155;
    letter-spacing: 0.02em;
    padding: 8px 0 6px;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: -3px;
}
.footer-nav-links .footer-group-title::before {
    content: '';
    display: inline-block;
    width: 3px;
    height: 12px;
    background: #94a3b8;
    border-radius: 2px;
    flex-shrink: 0;
}
.footer-nav-links .footer-group-title-link {
    color: #334155;
    text-decoration: none;
    transition: all 0.2s ease;
}
.footer-nav-links .footer-group-title-link:hover {
    color: #0573C3;
    text-decoration: underline;
}
.footer-nav-links .footer-sub-item {
    padding-left: 9px;
}

/* --- Bottom Bar --- */
.footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0;
    margin-top: 0;
}

.footer-copyright {
    font-size: 13px;
    color: #6a7280;
}

.footer-copyright a {
    color: #6a7280;
    text-decoration: none;
    transition: color 0.2s ease;
}

.footer-copyright a:hover {
    color: #0573C3;
}

/* ========== Responsive ========== */
@media (max-width: 1024px) {
    .footer-top {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .footer-nav {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px 0;
    }

    .footer-nav-col {
        padding: 0;
    }
}

@media (max-width: 640px) {
    .footer-container {
        padding: 32px 20px 0;
    }

    .footer-nav {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px 0;
    }

    .footer-nav-col h4 {
        font-size: 14px;
        margin-bottom: 12px;
    }

    .footer-nav-links a {
        font-size: 13px;
    }

    .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        padding: 16px 0;
    }

    .footer-phone span {
        font-size: 18px;
    }
}
</style>

<footer class="simple-footer">
  <div class="footer-container">
    <!-- Top Section: Brand + Nav -->
    <div class="footer-top">
      <!-- Left: Company Info -->
      <div class="footer-brand">
        <a href="/" class="footer-brand-logo" aria-label="Home">
          <img src="/uploads/allimg/20250929/1-2509291S3311O.png" alt="英达森斯半导体" onerror="this.style.display='none'">
          <span class="brand-text">英达森斯半导体</span>
        </a>
        <div class="footer-phone">
          <svg viewBox="0 0 24 24" fill="none" stroke="currentColor"><path d="M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72c.127.96.361 1.903.7 2.81a2 2 0 01-.45 2.11L8.09 9.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0122 16.92z"/></svg>
          <span>021 - 5877 8728</span>
        </div>
      </div>

      <!-- Right: Nav Links (4 columns) -->
      <nav class="footer-nav" aria-label="Footer navigation">
        <div class="footer-nav-col">
          <h4>产品</h4>
          <ul class="footer-nav-links">
            <li class="footer-group-title"><a href="/index.php?m=home&c=Lists&a=index&tid=70" class="footer-group-title-link">电感式编码器芯片</a></li><li class="footer-sub-item"><a href="/index.php?m=home&c=Lists&a=index&tid=71">模拟输出芯片</a></li><li class="footer-sub-item"><a href="/index.php?m=home&c=Lists&a=index&tid=72">数字输出芯片</a></li><li class="footer-sub-item"><a href="/index.php?m=home&c=Lists&a=index&tid=22">混合信号输出</a></li>          </ul>
        </div>

        <div class="footer-nav-col">
          <h4>解决方案</h4>
          <ul class="footer-nav-links">
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=98">工业自动化</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=99">具身智能与机器人</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=100">汽车电子与线控底盘</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=101">新能源与高端装备</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=102">智慧医疗与智能生活</a></li>
                      </ul>
        </div>

        <div class="footer-nav-col">
          <h4>设计与开发</h4>
          <ul class="footer-nav-links">
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=78">评测套件</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=79">开发工具</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=82">参考设计</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=5">算法赋能（AI）</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=32">iCoil Studio PCB线圈设计平台</a></li>
                      </ul>
        </div>

        <div class="footer-nav-col">
          <h4>服务和支持</h4>
          <ul class="footer-nav-links">
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=74">文档中心</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=75">工具下载</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=76">技术支持</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=77">常见问题</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=103">视频专区</a></li>
                      </ul>
        </div>

        <div class="footer-nav-col">
          <h4>关于英达森斯</h4>
          <ul class="footer-nav-links">
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=8">公司简介</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=9">简历投递</a></li>
                        <li><a href="/index.php?m=home&c=Lists&a=index&tid=30">联系我们</a></li>
                      </ul>
        </div>
      </nav>
    </div>

    <!-- Bottom Bar -->
    <div class="footer-bottom">
      <div class="footer-copyright">© 2026 英达森斯半导体. All rights reserved.</div>
      <div class="footer-copyright"><a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank"><a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">沪ICP备2024093817号-1</a></a></div>
    </div>
  </div>
</footer>
<script defer src="/public/plugins/Ueditor/third-party/jquery-1.10.2.min.js"></script>
<script defer src="/public/plugins/layer-v3.1.0/layer.js"></script>
<script>
var _hmt = _hmt || [];
(function() {
  var hm = document.createElement("script");
  hm.src = "https://hm.baidu.com/hm.js?fc96e815e6f2d660cb3ca6c41688c320";
  var s = document.getElementsByTagName("script")[0];
  s.parentNode.insertBefore(hm, s);
})();

// Update cart badge on page load
// jQuery 以 defer 方式加载，需等待 DOMContentLoaded（defer 脚本先于此事件执行）后再调用 $
document.addEventListener('DOMContentLoaded', function() {
  $.ajax({
    url: '/index.php?m=user&c=Shop&a=shop_cart_num&_ajax=1',
    type: 'get',
    dataType: 'json',
    success: function(res) {
      if (res.code == 1 && res.data > 0) {
        var badge = document.getElementById('cartBadge');
        if (badge) {
          badge.textContent = res.data;
          badge.style.display = 'flex';
        }
      }
    }
  });
});
</script>

<script>
/* 强制所有内部链接在当前窗口打开 */
document.addEventListener('DOMContentLoaded', function() {
    document.querySelectorAll('a').forEach(function(a) {
        var href = a.getAttribute('href');
        if (href && !href.startsWith('http') && !href.startsWith('//') && !href.startsWith('javascript')) {
            a.removeAttribute('target');
        }
        if (href && href.startsWith('/') && !href.startsWith('//')) {
            a.removeAttribute('target');
        }
    });
});
</script>

<script type="text/javascript">var root_dir="";var ey_aid=333;</script>
<script language="javascript" type="text/javascript" src="/public/static/common/js/ey_footer.js?v=v1.8.1.0"></script>
</body>
</html>

<!--网站公用底部 end -->
<script language="javascript" type="text/javascript" src="/template/pc/skin/js/common.js"></script>
