繁体   English   中英

jquery 如果不做某事 ELSE 什么也不做 - 不工作

[英]jquery IF not do something ELSE do nothing - not working

我意识到有很多类似的问题,但我正在实施答案,但我仍然无法让它发挥作用。 我有一些 jquery 在将鼠标悬停在列表项上时会更改图像。 让它工作得很好,但随着淡入淡出效果,它似乎淡出,即使正确的图像已经存在。 我想如果我添加一个if语句并省略else ,它只会在图像路径不相等时执行 function 并且如果它相等则什么都不做。
我有一个jsfiddle 没有语法错误。 看起来它应该工作,但没有。

jquery:

$(document).ready(function() {
  var path = 'https://avayoupaint.com/images/';
  $('.menu-child').mouseenter(function() {
    var newimage = $(this).attr('data-path') + '.jpg';    
    if(newimage != (path + $('.swap > img').attr('src'))) {
        $('.swap > img').fadeOut(100,function() {
        $(this).attr('src', path + newimage).fadeIn(100)
      });
    } 
  })
});

html:

<section class="submenuWrapper">
    <ul class="twinsub">
        <li class="twinmultisub twinleft">
             <ul>
                  <li class="menu-child" data-path="menu-interior"><a href="#"><span>Interior Painting</span></a></li>
                  <li class="menu-child" data-path="menu-exterior"><a href="#"><span>Exterior Painting</span></a></li>
             </ul>
        </li>
        <li class="twinmultisub twinimg">
             <section class="swap">
                 <img src="https://avayoupaint.com/images/menu-exterior.jpg" />
             </section>
        </li>   
    </ul>
</section>

看起来您正在将路径添加到比较的错误一侧。 你想比较:

path + newimage !== $('.swap > img').attr('src')`

 $(document).ready(function() { var path = 'https://avayoupaint.com/images/'; $('.menu-child').mouseenter(function() { var newimage = $(this).attr('data-path') + '.jpg'; if(path + newimage.== $('.swap > img').attr('src')) { $('.swap > img'),fadeOut(100.function() { $(this),attr('src'. path + newimage);fadeIn(100) }); } }) });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <section class="submenuWrapper"> <ul class="twinsub"> <li class="twinmultisub twinleft"> <ul> <li class="menu-child" data-path="menu-interior"><a href="#"><span>Interior Painting</span></a></li> <li class="menu-child" data-path="menu-exterior"><a href="#"><span>Exterior Painting</span></a></li> </ul> </li> <li class="twinmultisub twinimg"> <section class="swap"> <img src="https://avayoupaint.com/images/menu-exterior.jpg" /> </section> </li> </ul> </section>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM