求助:我在学习jQuery的时候,因为对css不了接,所以对jQuery的选择器也较难理解,先遇到问题如下:
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求助:我在学习jQuery的时候,因为对css不了接,所以对jQuery的选择器也较难理解,先遇到问题如下:相关的知识,希望对你有一定的参考价值。
有一个做导航栏的实例:
<div class="box">
<ul class="menu">
<li class="level1"> <a href="#none">衬衫</a>
<ul class="level2">
<li><a href="#none">短袖衬衫</a></li>
<li><a href="#none">长袖衬衫</a></li>
<li><a href="#none">短袖T恤</a></li>
<li><a href="#none">长袖T恤</a></li>
</ul>
</li>
<li class="level1"> <a href="#none">裤子</a>
<ul class="level2">
<li><a href="#none">短裤</a></li>
<li><a href="#none">休闲裤</a></li>
<li><a href="#none">牛仔裤</a></li>
<li><a href="#none">免烫卡其裤</a></li>
</ul>
</li>
</ul>
</div>
</body>
</html>
实现的效果图:单击class为level1的元素时,给其添加一个名为current的class,然后将其后面的元素显示出来,同时将父辈的同辈元素内部的子元素<a>都去掉一个名为current的class并且将紧邻他们后面的元素都隐藏。效果图:
jQuery代码:
<script type="text/javascript">
$(document).ready(function()
$(".level1>a").click(function()
$(this).addClass("current")
.next().show()
.parent().siblings().children("a").removeClass("current")
.next().hide();
return false;
);
);
</script>
我不明白的是:
$(".level1>a").click(function()
$(this).addClass("current") .next().show()
在这里的$(this)获取的应该是<li class="level1"> <a href="#none">衬衫</a>那个a标签吧,那么$(this).addClass("current").next().中的.next()是获取下一个与a标签同辈的元素,怎样才算是同辈元素呢?在这里似乎取得的不是下一个元素,而是取得了所有 class="level2"中所有的a标签啊?这是怎么回事呢?在线等,求指教!也可以hi我。
< div2> </div2>
兄弟
< div1>
< div2> </div2>
</div1>
父子
<div2>
在<div1>里面<div1>
是否在div1的标签里面 参考技术A <li>
<a></a> //1 这是同辈元素
<a></a> //2 这是同辈元素
<li> 参考技术B 比如:
<ul>
<li></li>
<li></li>
</ul>
这两个<li></li>便是同辈元素
Jquery源码解读
*
先记录一些零散的知识,待之后整理,因为现在也在学习中
是以jquery2.0.3.js为例
1,map(),是对数组array的二次处理
2,$(‘div‘).pushStack($(‘span‘)).css({‘background‘:‘red‘}).end().css({‘color‘:‘blue‘});
end()是对栈的回溯,
*
以上是关于求助:我在学习jQuery的时候,因为对css不了接,所以对jQuery的选择器也较难理解,先遇到问题如下:的主要内容,如果未能解决你的问题,请参考以下文章
求助:如果使用js\jq 控制一个div 当滚动到页面顶部的时候固定在顶部,离开可继续滚动