0
粘菜单我要检查的滚动位置大于350和menuSticky偏移位置是相同的condition.that条件92不working.I给我一段代码检查都scrollTop的和id抵消了单个条件
$(window).scroll(function(){
\t \t \t if($(document).scrollTop() > 350) {
\t \t \t \t $('.secMenu').addClass('menuSticky');
\t \t \t
\t \t \t } else {
\t \t \t \t $('.secMenu').removeClass('menuSticky');
\t \t \t }
\t \t \t var menu = $('.menuSticky'); //shows error
// var menu = $('.secMenu'); working
\t \t \t var origOffsetY = menu.offset().top;
\t \t \t console.log(menu.offset().top);
\t \t \t if((($('.menuSticky').offset.top)==92)) {
\t \t \t console.log('true');
\t \t \t $('.dropdown').hover(function() {
\t \t \t $('.secMenu').hide();
$(this).toggleClass("open");
\t \t \t }).mouseleave(function(){
\t \t \t $('.secMenu').show();
\t \t \t });
\t \t } \t
\t
});
.menuSticky{
\t /*top:14%; */
\t top:92px;
\t z-index:999;
position: fixed;
width: 100%;
\t left:1.1%;
\t
}
#consultant,#segment,#partner,#insights{
min-height:100vh;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<div class="row secMenu">
\t \t <div class="col-md-9 col-sm-12 menu">
\t \t <ul class="nav navMenu">
\t \t \t <li class="test1" ><a href="#consulting">Consulting & Solutions</a></li>
\t \t \t <li class="test2" ><a href="#segments">Segments</a></li>
\t \t \t <li class="test3" ><a href="#partner">Our Partners</a></li>
\t \t \t <li class="test4" ><a href="#insights">Perspectives</a></li>
\t \t \t </ul>
\t \t </div>
\t </div> <!--End of second menu -->
<div class="" id="consultant">consultant
</div>
<div class="" id="segment">segment
</div>
<div class="" id="partner">partner
</div>
<div class="" id="insights">insights
</div>
更新
$(window).scroll(function(){
if($(document).scrollTop() > 350) {
\t \t \t \t $('.secMenu').addClass('menuSticky');
\t \t \t
\t \t \t } else {
\t \t \t \t $('.secMenu').removeClass('menuSticky');
\t \t \t }
var menu = $('.menuSticky');
\t \t \t \t console.log(menu.length);
\t \t \t if (menu.length==1) {
\t \t \t
\t \t \t var origOffsetY = menu.offset().top;
\t \t \t console.log(menu.offset().top);
$('.dropdown').hover(function() {
\t \t \t $('.menuSticky').hide();
$(this).toggleClass("open");
\t \t \t }).mouseleave(function(){
\t \t \t $('.menuSticky').show();
\t \t \t });
\t \t \t
\t \t \t }
});
.menuSticky{
\t /*top:14%; */
\t top:92px;
\t z-index:999;
position: fixed;
width: 100%;
\t left:1.1%;
\t
}
#consultant,#segment,#partner,#insights{
min-height:100vh;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<div class="row secMenu">
\t \t <div class="col-md-9 col-sm-12 menu">
\t \t <ul class="nav navMenu">
\t \t \t <li class="test1" ><a href="#consulting">Consulting & Solutions</a></li>
\t \t \t <li class="test2" ><a href="#segments">Segments</a></li>
\t \t \t <li class="test3" ><a href="#partner">Our Partners</a></li>
\t \t \t <li class="test4" ><a href="#insights">Perspectives</a></li>
\t \t \t </ul>
\t \t </div>
\t </div> <!--End of second menu -->
<div class="" id="consultant">consultant
</div>
<div class="" id="segment">segment
</div>
<div class="" id="partner">partner
</div>
<div class="" id="insights">insights
</div>
我试图安慰menu.length这表明1时,它是secMenu menuSticky和0 secMenu..by使用这个,我试图做我的逻辑,更新后 – user3386779
工作fine.thanks .. – user3386779