515 lines
18 KiB
HTML
515 lines
18 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="zh-CN">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>大妈系统平台</title>
|
||
<style>
|
||
/* CSS样式将在这里添加 */
|
||
* {
|
||
margin: 0;
|
||
padding: 0;
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
body {
|
||
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
||
background-color: #f5f7fa;
|
||
color: #333;
|
||
height: 100vh;
|
||
display: flex;
|
||
}
|
||
|
||
/* 左侧菜单样式 */
|
||
.sidebar {
|
||
width: 250px;
|
||
background: linear-gradient(180deg, #2c3e50, #1a2530);
|
||
color: #ecf0f1;
|
||
height: 100%;
|
||
overflow-y: auto;
|
||
transition: all 0.3s ease;
|
||
box-shadow: 3px 0 10px rgba(0, 0, 0, 0.1);
|
||
}
|
||
|
||
.sidebar-header {
|
||
padding: 20px;
|
||
background-color: rgba(0, 0, 0, 0.2);
|
||
text-align: center;
|
||
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
|
||
}
|
||
|
||
.sidebar-header h2 {
|
||
font-size: 1.5rem;
|
||
font-weight: 600;
|
||
}
|
||
|
||
/* 菜单样式 */
|
||
.menu {
|
||
list-style: none;
|
||
padding: 10px 0;
|
||
}
|
||
|
||
.menu-item {
|
||
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
|
||
}
|
||
|
||
.menu-item > a {
|
||
display: flex;
|
||
align-items: center;
|
||
padding: 12px 20px;
|
||
color: #bdc3c7;
|
||
text-decoration: none;
|
||
transition: all 0.3s ease;
|
||
cursor: pointer;
|
||
}
|
||
|
||
.menu-item > a:hover {
|
||
background-color: rgba(255, 255, 255, 0.1);
|
||
color: #ecf0f1;
|
||
}
|
||
|
||
.menu-item > a i {
|
||
margin-right: 10px;
|
||
width: 20px;
|
||
text-align: center;
|
||
}
|
||
|
||
/* 子菜单样式 */
|
||
.submenu {
|
||
list-style: none;
|
||
padding-left: 0;
|
||
max-height: 0;
|
||
overflow: hidden;
|
||
transition: max-height 0.3s ease;
|
||
background-color: rgba(0, 0, 0, 0.2);
|
||
}
|
||
|
||
.submenu.open {
|
||
max-height: 500px;
|
||
}
|
||
|
||
.submenu-item a {
|
||
display: block;
|
||
padding: 10px 20px 10px 50px;
|
||
color: #95a5a6;
|
||
text-decoration: none;
|
||
transition: all 0.3s ease;
|
||
border-left: 3px solid transparent;
|
||
}
|
||
|
||
.submenu-item a:hover {
|
||
background-color: rgba(255, 255, 255, 0.05);
|
||
color: #ecf0f1;
|
||
border-left-color: #3498db;
|
||
}
|
||
|
||
/* 内容区域样式 */
|
||
.content {
|
||
flex: 1;
|
||
padding: 0;
|
||
overflow-y: hidden;
|
||
background-color: #fff;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.content-header {
|
||
display: none;
|
||
margin-bottom: 20px;
|
||
padding-bottom: 15px;
|
||
border-bottom: 1px solid #eee;
|
||
}
|
||
|
||
.content-header h1 {
|
||
color: #2c3e50;
|
||
font-size: 2rem;
|
||
}
|
||
|
||
.content-body {
|
||
flex: 1;
|
||
line-height: 1.6;
|
||
padding: 0;
|
||
margin: 0;
|
||
}
|
||
|
||
.content-section {
|
||
margin-bottom: 30px;
|
||
padding: 20px;
|
||
background-color: #f8f9fa;
|
||
border-radius: 5px;
|
||
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
|
||
}
|
||
|
||
.content-section h2 {
|
||
color: #3498db;
|
||
margin-bottom: 15px;
|
||
}
|
||
|
||
.content-section p {
|
||
margin-bottom: 15px;
|
||
color: #555;
|
||
}
|
||
|
||
/* iframe样式 */
|
||
.content-iframe {
|
||
width: 100%;
|
||
height: 100%;
|
||
border: none;
|
||
margin: 0;
|
||
padding: 0;
|
||
}
|
||
|
||
/* 为iframe内的页面提供通用的顶格显示样式 */
|
||
.content-iframe::after {
|
||
content: '';
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
right: 0;
|
||
bottom: 0;
|
||
}
|
||
|
||
/* 通过JavaScript动态注入CSS到iframe中,确保所有嵌入页面都顶格显示 */
|
||
|
||
/* 响应式设计 */
|
||
@media (max-width: 768px) {
|
||
.sidebar {
|
||
width: 70px;
|
||
}
|
||
|
||
.sidebar-header h2,
|
||
.menu-item span,
|
||
.submenu-item span {
|
||
display: none;
|
||
}
|
||
|
||
.menu-item a,
|
||
.submenu-item a {
|
||
justify-content: center;
|
||
padding: 15px 10px;
|
||
}
|
||
|
||
.menu-item a i,
|
||
.submenu-item a i {
|
||
margin-right: 0;
|
||
font-size: 1.2rem;
|
||
}
|
||
}
|
||
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<!-- 左侧菜单 -->
|
||
<div class="sidebar">
|
||
<div class="sidebar-header">
|
||
<h2>大妈系统平台</h2>
|
||
</div>
|
||
<ul class="menu">
|
||
<li class="menu-item">
|
||
<a>
|
||
<i>🏠</i>
|
||
<span>首页</span>
|
||
</a>
|
||
</li>
|
||
<li class="menu-item">
|
||
<a>
|
||
<i>📊</i>
|
||
<span>权限管理</span>
|
||
</a>
|
||
<ul class="submenu">
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>📈</i>
|
||
<span>权限编辑</span>
|
||
</a>
|
||
</li>
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>👥</i>
|
||
<span>市场经营者创建</span>
|
||
</a>
|
||
</li>
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>🛒</i>
|
||
<span>产品分析</span>
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="menu-item">
|
||
<a>
|
||
<i>📦</i>
|
||
<span>产品管理</span>
|
||
</a>
|
||
<ul class="submenu">
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>➕</i>
|
||
<span>新增产品</span>
|
||
</a>
|
||
</li>
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>✏️</i>
|
||
<span>编辑产品</span>
|
||
</a>
|
||
</li>
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>🗑️</i>
|
||
<span>删除产品</span>
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="menu-item">
|
||
<a>
|
||
<i>👥</i>
|
||
<span>用户管理</span>
|
||
</a>
|
||
<ul class="submenu">
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>📋</i>
|
||
<span>用户列表</span>
|
||
</a>
|
||
</li>
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>🔒</i>
|
||
<span>权限设置</span>
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="menu-item">
|
||
<a>
|
||
<i>⚙️</i>
|
||
<span>系统设置</span>
|
||
</a>
|
||
<ul class="submenu">
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>🌐</i>
|
||
<span>常规设置</span>
|
||
</a>
|
||
</li>
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>🎨</i>
|
||
<span>外观设置</span>
|
||
</a>
|
||
</li>
|
||
<li class="submenu-item">
|
||
<a>
|
||
<i>🔌</i>
|
||
<span>插件管理</span>
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
|
||
<!-- 内容区域 -->
|
||
<div class="content">
|
||
<div class="content-header">
|
||
<h1>欢迎使用大妈系统平台</h1>
|
||
</div>
|
||
<div class="content-body">
|
||
<div class="content-section">
|
||
<h2>系统介绍</h2>
|
||
<p>这是一个简洁美观的大妈系统平台,左侧是多级导航菜单,右侧是内容展示区域。您可以点击左侧菜单浏览不同的内容板块。</p>
|
||
<p>系统支持响应式设计,在不同设备上都能提供良好的用户体验。</p>
|
||
</div>
|
||
<div class="content-section">
|
||
<h2>功能特点</h2>
|
||
<p>1. 多级菜单结构:支持无限层级的菜单分类</p>
|
||
<p>2. 展开收起功能:点击箭头可展开或收起子菜单</p>
|
||
<p>3. 响应式设计:适配不同屏幕尺寸的设备</p>
|
||
<p>4. 美观界面:现代化的设计风格,提供良好的视觉体验</p>
|
||
</div>
|
||
<div class="content-section">
|
||
<h2>使用说明</h2>
|
||
<p>点击左侧菜单项可以展开或收起子菜单。</p>
|
||
<p>在移动设备上,菜单会自动折叠以节省空间。</p>
|
||
<p>内容区域会根据选择的菜单项显示相应的内容。</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<script>
|
||
// JavaScript功能将在这里添加
|
||
document.addEventListener('DOMContentLoaded', function() {
|
||
// 获取所有可展开的菜单项
|
||
const menuItems = document.querySelectorAll('.menu-item > a');
|
||
|
||
// 为每个可展开的菜单项添加点击事件
|
||
menuItems.forEach(item => {
|
||
item.addEventListener('click', function(e) {
|
||
e.preventDefault();
|
||
e.stopPropagation(); // 阻止事件冒泡到父级
|
||
|
||
// 切换子菜单的显示状态
|
||
const submenu = this.nextElementSibling;
|
||
submenu.classList.toggle('open');
|
||
});
|
||
});
|
||
|
||
// 为所有菜单项添加点击事件(仅子菜单项会加载页面)
|
||
const allMenuItems = document.querySelectorAll('.menu-item a, .submenu-item a');
|
||
allMenuItems.forEach(item => {
|
||
item.addEventListener('click', function(e) {
|
||
// 获取菜单项文本
|
||
const text = this.querySelector('span').textContent;
|
||
|
||
// 只有子菜单项点击才会加载页面
|
||
if (this.parentElement.classList.contains('submenu-item')) {
|
||
// 移除所有菜单项的活动状态
|
||
allMenuItems.forEach(i => i.classList.remove('active'));
|
||
|
||
// 为当前点击的菜单项添加活动状态
|
||
this.classList.add('active');
|
||
|
||
// 这里可以根据需要更新内容区域的内容
|
||
updateContent(text);
|
||
}
|
||
});
|
||
});
|
||
|
||
// 更新内容区域的函数
|
||
function updateContent(title) {
|
||
const contentBody = document.querySelector('.content-body');
|
||
|
||
// 移除内容区域标题的显示逻辑,直接在iframe中显示页面
|
||
|
||
// 如果是权限编辑或市场经营者创建,显示iframe
|
||
if (title === '权限编辑') {
|
||
contentBody.innerHTML = `
|
||
<iframe class="content-iframe" src="权限管理/权限编辑.html" onload="injectFullScreenStyles(this)"></iframe>
|
||
`;
|
||
} else if (title === '市场经营者创建') {
|
||
contentBody.innerHTML = `
|
||
<iframe class="content-iframe" src="权限管理/权限分配.html" onload="injectFullScreenStyles(this)"></iframe>
|
||
`;
|
||
} else {
|
||
// 其他菜单项直接在内容区域显示iframe
|
||
let url = '';
|
||
switch(title) {
|
||
case '首页':
|
||
url = '首页.html';
|
||
break;
|
||
case '新增产品':
|
||
url = '产品管理/新增产品.html';
|
||
break;
|
||
case '编辑产品':
|
||
url = '产品管理/编辑产品.html';
|
||
break;
|
||
case '删除产品':
|
||
url = '产品管理/删除产品.html';
|
||
break;
|
||
case '用户列表':
|
||
url = '用户管理/用户列表.html';
|
||
break;
|
||
case '权限设置':
|
||
url = '用户管理/权限设置.html';
|
||
break;
|
||
case '常规设置':
|
||
url = '系统设置/常规设置.html';
|
||
break;
|
||
case '外观设置':
|
||
url = '系统设置/外观设置.html';
|
||
break;
|
||
case '插件管理':
|
||
url = '系统设置/插件管理.html';
|
||
break;
|
||
case '产品分析':
|
||
url = '权限管理/产品分析.html';
|
||
break;
|
||
default:
|
||
// 对于未指定的菜单项,显示默认内容(包含标题)
|
||
contentBody.innerHTML = `
|
||
<div class="content-section">
|
||
<h2>${title}</h2>
|
||
<p>您已选择"${title}"菜单项。在这里可以展示与该菜单项相关的详细内容。</p>
|
||
<p>这是一个内容展示容器,您可以根据实际需求添加任何内容,包括文本、图片、表格等。</p>
|
||
</div>
|
||
<div class="content-section">
|
||
<p>此区域用于展示"${title}"相关的具体内容。</p>
|
||
<p>您可以添加任何HTML内容,包括:</p>
|
||
<ul>
|
||
<li>文本段落</li>
|
||
<li>图片展示</li>
|
||
<li>数据表格</li>
|
||
<li>表单元素</li>
|
||
<li>图表展示</li>
|
||
</ul>
|
||
</div>
|
||
`;
|
||
return;
|
||
}
|
||
|
||
// 如果有对应的URL,则在iframe中显示该页面
|
||
if (url) {
|
||
contentBody.innerHTML = `<iframe class="content-iframe" src="${url}" onload="injectFullScreenStyles(this)"></iframe>`;
|
||
}
|
||
}
|
||
}
|
||
|
||
// 为iframe注入通用的全屏样式
|
||
function injectFullScreenStyles(iframe) {
|
||
try {
|
||
// 等待iframe加载完成
|
||
iframe.onload = function() {
|
||
try {
|
||
const iframeDoc = iframe.contentDocument || iframe.contentWindow.document;
|
||
|
||
// 创建样式标签
|
||
const style = iframeDoc.createElement('style');
|
||
style.textContent = `
|
||
* {
|
||
margin: 0 !important;
|
||
padding: 0 !important;
|
||
box-sizing: border-box !important;
|
||
}
|
||
|
||
html, body {
|
||
width: 100% !important;
|
||
height: 100% !important;
|
||
margin: 0 !important;
|
||
padding: 0 !important;
|
||
overflow-x: hidden !important;
|
||
}
|
||
|
||
.container {
|
||
width: 100% !important;
|
||
height: 100vh !important;
|
||
margin: 0 !important;
|
||
padding: 0 !important;
|
||
max-width: none !important;
|
||
border-radius: 0 !important;
|
||
box-shadow: none !important;
|
||
}
|
||
|
||
body {
|
||
padding: 0 !important;
|
||
margin: 0 !important;
|
||
}
|
||
`;
|
||
|
||
// 将样式添加到iframe的head中
|
||
iframeDoc.head.appendChild(style);
|
||
} catch (e) {
|
||
// 如果跨域无法访问iframe内容,忽略错误
|
||
console.log('无法访问iframe内容(可能是跨域限制):', e);
|
||
}
|
||
};
|
||
} catch (e) {
|
||
console.log('注入样式失败:', e);
|
||
}
|
||
}
|
||
});
|
||
</script>
|
||
</body>
|
||
</html> |