Jquery树形菜单默认全部展开了,需要缩起,求解_html/css_WEB-ITnose

WBOY
Freigeben: 2016-06-24 11:52:39
Original
1157 Leute haben es durchsucht

个人网上下了一段Jquery树形菜单代码,默认打开页面是全部展开的,需要全部缩起来,只显示第一级,求解修改哪里?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title></title><!--图标样式--><link rel="stylesheet" type="text/css" href="css/bootstrap.min.css" /><!--主要样式--><link rel="stylesheet" type="text/css" href="css/style.css" /><script type="text/javascript" src="js/jquery-1.7.2.min.js"></script><script type="text/javascript">$(function(){    $('.tree li:has(ul)').addClass('parent_li').find(' > span').attr('title', 'Collapse this branch');    $('.tree li.parent_li > span').on('click', function (e) {	        var children = $(this).parent('li.parent_li').find(' > ul > li');        if (children.is(":visible")) {            children.hide('fast');            $(this).attr('title', 'Expand this branch').find(' > i').addClass('icon-plus-sign').removeClass('icon-minus-sign');        } else {            children.show('fast');            $(this).attr('title', 'Collapse this branch').find(' > i').addClass('icon-minus-sign').removeClass('icon-plus-sign');        }        e.stopPropagation();		    });});</script></head><body><div class="tree well"><ul>	<li>		<span><i class="icon-minus-sign"></i> Parent2</span> <a style="display:none" href="#">Test</a>		<ul>			<li>				<span ><i class="icon-globe"></i> Child</span> <a style="display:none" href="#">Test</a>			</li>			<li>				<span><i class="icon-globe"></i> Child</span> <a style="display:none" href="#">Test</a>			</li>		</ul>	</li>	<li>		<span><i class="icon-minus-sign"></i> Parent2</span> <a style="display:none" href="#">Test</a>		<ul>			<li>				<span><i class="icon-globe"></i> Child</span> <a style="display:none" href="#">Test</a>			</li>		</ul>	</li>	<li>		<span><i class="icon-globe"></i> Parent2</span> 			</li></ul></div></body></html>
Nach dem Login kopieren


回复讨论(解决方案)

没有人帮我嘛。。

.addClass('icon-plus-sign').removeClass('icon-minus-sign');

这是 增加样式与去除样式。jq里用show()与hide()来显示与隐藏

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title></title> <!--图标样式--><link rel="stylesheet" type="text/css" href="css/bootstrap.min.css" /> <!--主要样式--><link rel="stylesheet" type="text/css" href="css/style.css" /> <script type="text/javascript" src="js/jquery-1.7.2.min.js"></script><script type="text/javascript">$(function(){    $('.tree li:has(ul)').addClass('parent_li').find(' > span').attr('title', 'Collapse this branch');    $('.tree li.parent_li > span').live('click', function (e) {             var children = $(this).parent('li.parent_li').find(' > ul > li');        if (children.is(":visible")) {            children.hide('fast');            $(this).attr('title', 'Expand this branch').find(' > i').addClass('icon-plus-sign').removeClass('icon-minus-sign');        } else {            children.show('fast');            $(this).attr('title', 'Collapse this branch').find(' > i').addClass('icon-minus-sign').removeClass('icon-plus-sign');        }        e.stopPropagation();             });}); </script> </head><body> <div class="tree well"><ul>    <li>        <span><i class="icon-minus-sign"></i> Parent2</span> <a style="display:none" href="#">Test</a>        <ul>            <li>                <span ><i class="icon-globe"></i> Child</span> <a style="display:none" href="#">Test</a>            </li>            <li>                <span><i class="icon-globe"></i> Child</span> <a style="display:none" href="#">Test</a>            </li>        </ul>    </li>    <li>        <span><i class="icon-minus-sign"></i> Parent2</span> <a style="display:none" href="#">Test</a>        <ul>            <li>                <span><i class="icon-globe"></i> Child</span> <a style="display:none" href="#">Test</a>            </li>        </ul>    </li>    <li>        <span><i class="icon-globe"></i> Parent2</span>              </li></ul></div> <script>$('ul li ul:not(:first) li').hide()</script></body></html>
Nach dem Login kopieren

.addClass('icon-plus-sign').removeClass('icon-minus-sign');

这是 增加样式与去除样式。jq里用show()与hide()来显示与隐藏



我给你CSS 你看看 那都是替换展开收缩的加减图标用的,icon的css都是图标。
a:link { color: #000000; text-decoration: none;}a:visited { color: #000000; text-decoration: none;}a:hover { color:#999999; text-decoration: underline;}a:active { color: #000000; text-decoration: none;}.tree {    min-height:20px;    padding:19px;    margin-bottom:20px;    background-color:#fbfbfb;    border:1px solid #999;    -webkit-border-radius:4px;    -moz-border-radius:4px;    border-radius:4px;    -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);    -moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);    box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05)}.tree li {    list-style-type:none;    margin:0;    padding:10px 5px 0 5px;    position:relative}.tree li::before, .tree li::after {    content:'';    left:-20px;    position:absolute;    right:auto}.tree li::before {    border-left:1px solid #999;    bottom:50px;    height:100%;    top:0;    width:1px}.tree li::after {    border-top:1px solid #999;    height:20px;    top:25px;    width:25px}.tree li span {    -moz-border-radius:5px;    -webkit-border-radius:5px;    border:1px solid  #999999;    border-radius:5px;    display:inline-block;    padding:3px 8px;    text-decoration:none}.tree li.parent_li>span {    cursor:pointer}.tree>ul>li::before, .tree>ul>li::after {    border:0}.tree li:last-child::before {    height:30px}.tree li.parent_li>span:hover, .tree li.parent_li>span:hover+ul li span {    background:#eee;    border:1px solid #94a0b4;    color:#000}
Nach dem Login kopieren

$(function(){    $('.tree li:has(ul)').addClass('parent_li').find(' > span').attr('title', 'Collapse this branch');    $('.tree li.parent_li > span').live('click', function (e) {             var children = $(this).parent('li.parent_li').find(' > ul > li');        if (children.is(":visible")) {            children.hide('fast');            $(this).attr('title', 'Expand this branch').find(' > i').addClass('icon-plus-sign').removeClass('icon-minus-sign');        } else {            children.show('fast');            $(this).attr('title', 'Collapse this branch').find(' > i').addClass('icon-minus-sign').removeClass('icon-plus-sign');        }        e.stopPropagation();             });});  <script>$('ul li ul:not(:first) li').hide()</script>
Nach dem Login kopieren



Hi  非常感谢! 我要去学习一下这里的live 和 on 作用  ,<script>$('ul li ul li').hide()</script> 全部缩进。
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage