html表格可折叠的三级分类是什么?

html表格可折叠的三级分类是什么?,第1张

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=UTF-8" />

<title>CSS+JavaScript三级折叠菜单</title>

<style>

*,body,ul,li,h1,h2 {

margin: 0

padding: 0

list-style: none

}

body {

font: 12px "宋体"

padding-top: 20px

}

#menu {

width: 200px

margin: auto

}

#menu h1 {

cursor: pointer

color: #FFF

font-size: 12px

padding: 5px 0 3px 10px

border: #C60 1px solid

margin-top: 1px

background-color: #F93

}

#menu h2 {

cursor: pointer

color: #777

font-size: 12px

padding: 5px 0 3px 10px

border: #E7E7E7 1px solid

border-top-color: #FFF

background-color: #F4F4F4

}

#menu ul {

padding-left: 15px

height: 100px

border: #E7E7E7 1px solid

border-top: none

overflow: auto

}

#menu ul li {

padding: 5px 0 3px 10px

}

.no {

display: none

}

</style>

<script language="JavaScript">

function ShowMenu(obj, noid) {

var block = document.getElementById(noid)

var n = noid.substr(noid.length - 1)

if (noid.length == 4) {

var ul = document.getElementById(noid.substring(0, 3)).getElementsByTagName("ul")

var h2 = document.getElementById(noid.substring(0, 3)).getElementsByTagName("h2")

for (var i = 0i <h2.lengthi++) {

h2[i].innerHTML = h2[i].innerHTML.replace("+", "-")

h2[i].style.color = ""

}

obj.style.color = "#FF0000"

for (var i = 0i <ul.lengthi++) {

if (i != n) {

ul[i].className = "no"

}

}

} else {

var span = document.getElementById("menu").getElementsByTagName("span")

var h1 = document.getElementById("menu").getElementsByTagName("h1")

for (var i = 0i <h1.lengthi++) {

h1[i].innerHTML = h1[i].innerHTML.replace("+", "-")

h1[i].style.color = ""

}

obj.style.color = "#0000FF"

for (var i = 0i <span.lengthi++) {

if (i != n) {

span[i].className = "no"

}

}

}

if (block.className == "no") {

block.className = ""

obj.innerHTML = obj.innerHTML.replace("-", "+")

} else {

block.className = "no"

obj.style.color = ""

}

}

</script>

</head>

<body>

<div id="menu">

<h1 onClick="javascript:ShowMenu(this,'NO0')">- 一级菜单A</h1>

<span id="NO0" class="no">

<h2 onClick="javascript:ShowMenu(this,'NO00')">- 一级菜单A_1</h2>

<ul id="NO00" class="no">

<li>一级菜单A_0</li>

<li>一级菜单A_1</li>

<li>一级菜单A_2</li>

<li>一级菜单A_3</li>

<li>一级菜单A_4</li>

<li>一级菜单A_5</li>

</ul>

<h2 onClick="javascript:ShowMenu(this,'NO01')">- 一级菜单A_2</h2>

<ul id="NO01" class="no">

<li>一级菜单A_0</li>

<li>一级菜单A_1</li>

<li>一级菜单A_2</li>

<li>一级菜单A_3</li>

<li>一级菜单A_4</li>

</ul>

<h2 onClick="javascript:ShowMenu(this,'NO02')">- 一级菜单A_3</h2>

<ul id="NO02" class="no">

<li>一级菜单A_0</li>

<li>一级菜单A_1</li>

<li>一级菜单A_2</li>

<li>一级菜单A_3</li>

<li>一级菜单A_4</li>

<li>一级菜单A_5</li>

<li>一级菜单A_6</li>

</ul>

<h2 onClick="javascript:ShowMenu(this,'NO03')">- 一级菜单A_4</h2>

<ul id="NO03" class="no">

<li>一级菜单A_0</li>

<li>一级菜单A_1</li>

<li>一级菜单A_2</li>

<li>一级菜单A_3</li>

<li>一级菜单A_4</li>

<li>一级菜单A_5</li>

<li>一级菜单A_6</li>

<li>一级菜单A_7</li>

</ul>

</span>

<h1 onClick="javascript:ShowMenu(this,'NO1')">- 二级菜单B</h1>

<span id="NO1" class="no">

<h2 onClick="javascript:ShowMenu(this,'NO10')">- 二级菜单B_1</h2>

<ul id="NO10" class="no">

<li>二级菜单B_0</li>

<li>二级菜单B_1</li>

<li>二级菜单B_2</li>

<li>二级菜单B_3</li>

<li>二级菜单B_4</li>

<li>二级菜单B_5</li>

<li>二级菜单B_6</li>

<li>二级菜单B_7</li>

</ul>

<h2 onClick="javascript:ShowMenu(this,'NO11')">- 二级菜单B_2</h2>

<ul id="NO11" class="no">

<li>二级菜单B_0</li>

<li>二级菜单B_1</li>

<li>二级菜单B_2</li>

<li>二级菜单B_3</li>

<li>二级菜单B_4</li>

<li>二级菜单B_5</li>

<li>二级菜单B_6</li>

<li>二级菜单B_7</li>

</ul>

</span>

<h1 onClick="javascript:ShowMenu(this,'NO2')">- 三级菜单C</h1>

<span id="NO2" class="no">

<h2 onClick="javascript:ShowMenu(this,'NO20')">- 三级菜单C_1</h2>

<ul id="NO20" class="no">

<li>三级菜单C_0</li>

<li>三级菜单C_1</li>

<li>三级菜单C_2</li>

<li>三级菜单C_3</li>

<li>三级菜单C_4</li>

<li>三级菜单C_5</li>

<li>三级菜单C_6</li>

<li>三级菜单C_7</li>

<li>三级菜单C_8</li>

<li>三级菜单C_9</li>

</ul>

<h2 onClick="javascript:ShowMenu(this,'NO21')">- 三级菜单C_2</h2>

<ul id="NO21" class="no">

<li>三级菜单C_0</li>

<li>三级菜单C_1</li>

<li>三级菜单C_2</li>

<li>三级菜单C_3</li>

<li>三级菜单C_4</li>

</ul>

</span>

<h1 onClick="javascript:ShowMenu(this,'NO3')">- 四级菜单D</h1>

<span id="NO3" class="no">

<h2 onClick="javascript:ShowMenu(this,'NO30')">- 四级菜单D_1</h2>

<ul id="NO30" class="no">

<li>四级菜单D_0</li>

<li>四级菜单D_1</li>

<li>四级菜单D_2</li>

<li>四级菜单D_3</li>

</ul>

<h2 onClick="javascript:ShowMenu(this,'NO31')">- 四级菜单D_2</h2>

<ul id="NO31" class="no">

<li>四级菜单D_0</li>

<li>四级菜单D_1</li>

<li>四级菜单D_2</li>

<li>四级菜单D_3</li>

<li>四级菜单D_4</li>

<li>四级菜单D_5</li>

</ul>

</span>

</div>

</body>

</html>

<a href="小菜单页面" target="left">大菜单</a>

<a href="文本页面" target="right">小菜单</a>

要用这样的方式打开新的页面,关键点在target这个值上面,表示你在哪个frame里打开新页面。

大致思路

左侧:菜单,给每个菜单设置id和onclick点击事件,onclick事件触发的函数假设写为display()

右侧:写个固定样式的div,id假设设置为board。

如果你的菜单内容在服务器

display()的实现如下

function display(){

    $.ajax({

    type: "POST",

    url: 菜单所请求的内容地址,

    data: this.id等等相关的请求标志,

    success: funtion(data){$('board').html(data)},//返回数据填充

    dataType: dataType})

}

如果菜单内容写死在页面内

那么右侧:写和菜单数一样多的div,把所有的display属性设置为none

同时display()的实现如下

function display(){

    $('#'+$(this).attr('rel')).style.display='block'

}

以上,伪代码,仅供参考


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7027022.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-31
下一篇 2023-03-31

发表评论

登录后才能评论

评论列表(0条)

保存