我知道我的問題有點太具體,但我無法解決問題。拉菜單jQuery腳本的CSS錯誤
這裏是我的演示:http://jsfiddle.net/NWMST/ (你會看到CSS有一些評論,你可以忽略一些東西......)
問題:通知THT默認菜單,有圓角(境-半徑)。當你點擊它來拉出菜單時,兩個頂部角落停止具有邊界半徑。然而,如果你再次點擊,關閉它,頂部角落保持不變,沒有邊界半徑...
我已經做了很多不同的嘗試,我在這裏找到的代碼片段在stackoverflow,但不是在哪裏解決方案我正在尋找。我很抱歉問這個問題,我理解jQuery只是爲了操縱它,但我幾乎不能編寫自己的腳本。
拉教程中,我使用:http://www.hongkiat.com/blog/responsive-web-nav/
這裏的標記,樣式和腳本(但是,你可以現場看到它的演示,實際看到的問題是什麼):
HTML標記:
<nav id="menu" class="clearfix">
<ul class="clearfix">
<li><a class="current first-item" href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Portfolio</a></li>
<li><a href="#">Blog</a></li>
<li><a href="#">Contact</a></li>
</ul>
<a href="#" id="pull">Menu</a>
</nav>
CSS:
#menu a {text-decoration: none; }
#menu ul {display: none; }
#menu {text-align: center; }
#menu #pull {
display: block;
position: relative;
display: block;
font: 700 19px/1.45em 'Open Sans', Arial, sans-serif;
color: #2e2e2e;
padding: 8px 0 6px;
border: 1px solid #bdc4c7;
background: #fff;
-webkit-box-shadow: none;
box-shadow: none;
-webkit-border-radius: 3px;
border-radius: 3px;
}
/* the rule I'm using on the script */
#menu #pull.radius {
-webkit-border-radius: 0 0 3px 3px;
border-radius: 0 0 3px 3px;
}
#menu #pull i {
font-size: 25px;
padding-right: 10px;
}
#menu #pull:hover,
#menu #pull:focus,
#menu #pull:active {color: #04bfee; }
#menu {
float: none;
clear: both;
}
#menu li {
float: none;
margin: 0;
}
#menu li a {
position: relative;
display: block;
font: 700 12px/1em 'Open Sans', Arial, sans-serif;
text-transform: uppercase;
color: #2e2e2e;
padding: 8px 12px 6px;
border: 1px solid #bdc4c7;
border-bottom: 0 none;
background: #fff;
-webkit-box-shadow: none;
box-shadow: none;
-webkit-border-radius: 0;
border-radius: 0;
}
#menu li a.current,#menu li a:hover,#menu li a:focus {
color: #0abcff;
border: 0 none;
border: 1px solid #bdc4c7;
border-bottom: 0 none;
background: #fafafa;
-webkit-box-shadow: none;
box-shadow: none;
}
#menu li a.first-item {
-webkit-border-radius: 3px 3px 0 0;
border-radius: 3px 3px 0 0;
}
jQuery腳本:
$(function() {
var pull = $('#pull');
menu = $('#menu ul');
menuHeight = menu.height();
$(pull).on('click', function(e) {
if($(this).is('.radius')) {$(this).removeClass('radius');}
$(this).addClass('radius').siblings().removeClass('radius');
e.preventDefault();
menu.slideToggle();
});
});
$(window).resize(function(){
var w = $(window).width();
if(w > 767 && menu.is(':hidden')) {
menu.removeAttr('style');
}
});
非常感謝你們。
真棒謝謝!我嘗試了類似的東西,我刪除了if,但是我沒有更改添加的切換...令人驚訝的是,一個小小的單詞可以改變整個事情!謝謝,很好的回答 –
@Santz太棒了,歡迎你! – Cherniv