2017-01-06 40 views
0

我在每個列表項中都有一個鏈接和div。如果鏈接有一個href,那麼我想確保div在其列表項中隱藏,並且鏈接顯示正常。如果href爲空,隱藏鏈接,然後顯示不同的按鈕?

但是,如果該鏈接不具有HREF(例如HREF =「」),那麼我想這個類.show添加到div這樣我就可以證明這一點。我也想同時隱藏鏈接。

或者是否有更好的方法來做到這一點?由於

<style> 
    .nolinkdiv { display:none; } 
    .show { display:block!important; } 
</style> 

<ul> 
    <li> 
    <a href="/register.html">Register</a> 
    <div class="nolinkdiv">Register Coming Soon</div> 
    </li> 
    <li> 
    <a href="">Register</a> 
    <div class="nolinkdiv">Register Coming Soon</div> 
    </li> 
</ul> 

回答

2

你不需要的JavaScript這樣的:

.nolinkdiv { display:none; } 
ul li a[href=""] { 
    display: none; 
} 
ul li a[href=""] + div { 
    display: block; 
} 
0

$(document).ready(function() { 
 
    $('ul li').each(function(idx, li) { 
 
     var LI = $(this); 
 
     var hrefValue = LI.find("a").attr('href'); 
 
     if(hrefValue) { 
 
      LI.find("div").hide() 
 
     } else { 
 
      LI.find("a").hide() 
 
     } 
 
    }) 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
    <li> 
 
    <a href="/register.html">Register</a> 
 
    <div class="">Register Coming Soon</div> 
 
    </li> 
 
    <li> 
 
    <a href="">Register</a> 
 
    <div class="">Register Coming Soon</div> 
 
    </li> 
 
</ul>