HTML代码如下:
<!doctype html> <html lang=zh> <head> <Meta charset=UTF-8> <Meta http-equiv=X-UA-Compatible content=IE=edge,chrome=1> <Meta name=viewport content=width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no /> <title>jQuery+CSS3创意搜索框特效 - 何问起</title> <link rel=stylesheet type=text/css href=http://hovertree.com/texiao/jquery/26/css/default.css /> <!--必要样式--> <link rel=stylesheet type=text/css href=http://hovertree.com/texiao/jquery/26/css/search-form.css /> </head> <body> <p> <a href=http://hovertree.com/>首页</a> <a href=http://hovertree.com/texiao/>特效</a> <a href=http://hovertree.com/h/bjaf/sousuokuang.htm>原文</a> </p> <form onSubmit=submitFn(this, event); name=yestop> <p class=search-wrapper> <p class=input-holder> <input type=text class=search-input placeholder=请输入关键词 name=hewenqi /> <input type=hidden name=q /> <button class=search-icon onClick=searchToggle(this, event);><span></span></button> </p> <span class=close onClick=searchToggle(this, event);></span> <p class=result-container> </p> </p> </form> <script src=http://hovertree.com/ziyuan/jquery/jquery-1.12.0.min.js type=text/javascript></script> <script type=text/javascript src=http://hovertree.com/texiao/jquery/26/js/hovertreesearch.js></script> </body> </html>
其中hovertreesearch.js的代码如下:
function searchToggle(obj, evt) { var container = $(obj).closest('.search-wrapper'); if (!container.hasClass('active')) { container.addClass('active'); evt.preventDefault(); } else if (container.hasClass('active') && $(obj).closest('.input-holder').length == 0) { container.removeClass('active'); // clear input container.find('.search-input').val(''); // clear and hide result container when we press close container.find('.result-container').fadeOut(100, function () { $(this).empty(); }); } } function submitFn(obj, evt) { var value = $(obj).find('.search-input').val().trim(); var _html = 您搜索的关键词: ; if (!value.length) { _html = 关键词不能为空。; } else { window.open(http://cn.bi + ng.com/search?q=site%3Ahove + rtree.com + value + &hewenqi=yestop); _html += <b> + value + </b>; } $(obj).find('.result-container').html('<span>' + _html + '</span>'); $(obj).find('.result-container').fadeIn(100); evt.preventDefault(); }