我正在开发一个wordpress网站,并希望在导航菜单内插入一个搜索表单,以便当您在搜索按钮(字体如此)上方时,搜索框会展开,并且一旦展开,它将允许用户输入输入并点击搜索;但是如果用户将鼠标从搜索框上移开,它将消失。

一个很好的例子可以在http://www.woothemes.com中看到。

到目前为止,我有一个问题是让搜索框的顶部出现在导航项上,而不是在其中保留空白。然后保持打开状态,直到用户将其移除为止(此时,导航会重新出现。

这是我对jQuery的基本了解的普及程度:https://jsfiddle.net/ru0f2vy2/



$(function () {
    var mglass = $('.fa-input');
    var form = $('.search_box');
    mglass.mouseenter(function () {
        if (form.is(':hidden')) form.show()
        form.animate({
            'width': form.width() == 100 ? '0px' : '100px'
        }, 'slow', function () {
            if (form.width() == 0) form.hide()
        });
    });
});

/* Search Box text */
#header_search2 {
	overflow: hidden;
	float: right;
	width: 85px;
}

.searchform {

}


#container {
	width: 960px; margin: 0 auto; overflow: hidden;
}


.fa-input {
  font-family: FontAwesome, 'Helvetica Neue', Helvetica, Arial, sans-serif;
  width: 10px;
  float: right;
}

.search_box {
	display: none;
}

.search_text {
	width: 74px;
	float: left;
}


/* The rest of the CSSS */

#header_home {
	height: 600px;
	padding-top: 35px;
	padding-bottom: 22px;
	z-index: 10;
}


#header_home h1{
	border: 0;
	font: 0/0 a;
	text-shadow: none;
	color: transparent;
	background: url(img/logo2.png);
	width: 281px;
	height: 124px;
	float: left;
}

#header_home li {
	display: inline;
	position: relative;
}

#header_home ul {
	list-style: none;
    float: right;
    padding: 45px 0 0 0;

}

#header_home ul li {
	text-align: left;
	display: inline;
	margin-left: 15px;
	font-size: 12px;
}

#header_home ul li a {
	text-decoration: none;
	color: #62666a;
}

#header_home ul li a:hover {
	color: #029fe0;
	text-decoration: underline;
	transition: all 0.2s ease-in-out;
}

#header_home ul ul {
	position: absolute;
	display: none;
	padding: 0;
	margin: 0;
}


#header_home ul ul li {
	margin: 0;
	float: left;
	padding-top: 7px;
	padding-right: 10px;

}

#header_home ul ul li a {
	width: 45px;
}

#header_home li:hover ul {
	display: block;
	transition: all 0.2s ease-in-out;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="container">  <!----- CONTAINER START ---->

	<div id="header_home"> <!----- HEADER START ---->

		<a href="#" title="Return to the homepage"><h1>QEPrize</h1></a>

		<nav>
			<ul>
				<li><a href="#">News</a></li>
				<li>
					<a href="#">Nominate &#x25BE;</a>
					<ul>
						<li><a href="#">Judges</a></li>
						<li><a href="#">Search-Group</a></li>
						<li><a href="#">Criteria</a></li>
					</ul>
				</li>
				<li>
					<a href="#">Winners &#x25BE;</a>
					<ul>
						<li><a href="#">2015</a></li>
						<li><a href="#">2013</a></li>
					</ul>
				</li>
				<li>
					<a href="#">Trophy &#x25BE;</a>
					<ul>
						<li><a href="#">2015</a></li>
						<li><a href="#">2013</a></li>
					</ul>
				</li>
				<li>
					<a href="#">Charity &#x25BE;</a>
					<ul>
						<li><a href="#">Donors</a></li>
						<li><a href="#">Trustees</a></li>
						<li><a href="#">Jobs</a></li>
					</ul>
				</li>
				<li>
					<a href="#">Contact &#x25BE;</a>
					<ul>
						<li><a href="#">Map</a></li>
						<li><a href="#">Newsletter</a></li>
					</ul>
				</li>

				<li>
					<div id="header_search2">
						<form role="search" method="get" id="searchform" class="searchform" action="http://www.test.dev/">
							<div class="search_box"><input type="text" value="" name="s" id="s" class="search_text"/></div><input type="submit" class="btn fa-input" value="&#xf002;">
					</form>
					</div>
				</li>


			</ul>

		</nav>
        </div>
    </div>

最佳答案

您可以在没有JS的情况下执行此操作。我在这里创建了一个快速的example

<div class="search">
   search
   <input type="text" />
</div>
<ul>
   <li>news
   </li>
   <li>Nominate
   </li>
   <li>Trophy
   </li>
</ul>

关于jquery - jQuery,在导航顶部扩展搜索表单,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28531159/

10-11 22:56
查看更多