【发布时间】:2016-05-04 00:56:07
【问题描述】:
我正在创建一个响应式网站,平板电脑和移动设备布局的菜单需要与 PC 布局不同。所以我的客户希望他的徽标首先出现在平板电脑/移动布局中,我尝试使用 jquery 但无法正常工作,有人可以帮助我吗? 当窗口宽度小于 1024 像素时,我需要将徽标放在第一个位置,但我的 jquery 无法正常工作。
html:
<nav class="nav">
<ul>
<li><a href="#"><img class="lupa" src="img/lupa.png" alt="Search" onClick="ShowFieldSearch()"></a>
<div id="boxSearch">
<form id="formSearch" action="" method="get">
<input id="search" type="text" value="" maxlength="150" placeholder="Search..." onBlur="HideFieldSearch()">
</form>
</div>
</li>
<li><a href="#">Home Page</a></li>
<li><a href="#">Products<img class="flechaVertical" src="img/flecha.png" alt="flecha"></a>
</li>
<li><a href="#"><img id="navLogo" class="navLogo" src="img/logotipo.png" alt="Versatyll"></a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contats</a></li>
<li><a href="#">Doubts</a></li>
</ul>
</nav>
CSS:
#boxSearch{
padding-left:15px;
}
#Search{
width:160px;
height:50px;
margin-left:10px;
display:none;
position:absolute;
text-align:center;
border:1px solid #222222;
}
/* -------------------------------*/
/* Navigation Menus */
.lupa{
width:30px;
height:30px;
padding-left:35px;
}
.flechaVertical{
width:8px;
height:8px;
padding-left:5px;
}
.navLogo{
width:160px;
height:90px;
}
.nav{
width:200px;
margin: 0;
text-align: left;
background-color: #FFFFFF;
position: fixed;
}
.nav ul{
list-style:none;
padding:0;
margin:0;
position:relative;
}
.nav ul li{
display:block;
}
.nav ul li a,visited{
color:#000000;
display:block;
padding:10px;
padding-left:30px;
text-decoration:none;
}
.nav ul li a:hover{
color:#990000;
text-decoration:none;
}
jquery:
$(document).ready(function(){
var $logo = $(".nav ul li").eq(3);
function PositionLogo(){
if($(window).width() < 1024){
$logo.remove().insertBefore(".nav ul li:first-chiild");
}
else{
$logo.remove().insertAfter(".nav ul li:nth-child(3));
}
}
});
【问题讨论】:
-
你需要为第一个孩子删除多余的 i 并在 child(3) 之后添加一个 " 只是为了清理你的 jQuery
标签: javascript jquery html css hierarchy