自定义搜索栏

时间:2011-05-11 22:06:20

标签: jquery css search

如果您查看谷歌,他们的搜索栏上有一些优秀的功能,但我想知道是否有人能指出我复制其中一些功能的方向?

实施例: enter image description here

我们想在输入字段的搜索框末尾添加X,向右浮动。 虽然不知道如何做到这一点,但我认为css是直接的,但是如果不刷新页面就不能确保编写脚本。

请任何想法。

我们的搜索框是自动建议,代码并不是真正需要(html)显示在这里,但可以发布,如果人们需要看到我们的简单代码。此外,想知道是否有人在输入字段中实际添加了类似于该图像的清晰结果X ....

或者发布一些链接..这里的bugger是我们的HTML。

<input name="suburbs" id="suburbs" type="text" placeholder="eg: Apples" onkeyup="lookup(this.value);" onblur="fill();" autocomplete="off" /></input>
                            <!--added autosuggest-->
                                <div class="suggestionsBox" id="suggestions" style="display: none;">
                                    <div class="suggestionList" id="autoSuggestionsList">
                                        &nbsp;
                                    </div>
                                </div>
                            <!--//auto suggest end-->

3 个答案:

答案 0 :(得分:1)

如果您使用例如firebug检查Google页面的来源,您会看到x不是输入字段的一部分,它是x包裹在下一个链接标记中表格列(输入与其他一些内容一起放在上一栏中)。

只需在链接标记中添加一些javascript即可清除输入并取消标准操作,您将获得全部效果。

答案 1 :(得分:1)

试试这个:

    <head>
    <title>Untitled Page</title>
    <script src="jquery-1.5.1.min.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function () {

            $('#searchBar span').click(function () {
                $('#searchBar input[type=text]').val('');
            });

        });

    </script>

    <style type="text/css">
        input[type=text]
        {
            border:solid 1px #ccc;
            width:400px;
            padding:5px;
            padding-right:25px;
            }

         #searchBar span 
         {
             margin-left:-25px;
             margin-right:10px;
             font-family:Arial;
             color:blue;
             cursor:pointer;
             zoom:1;
             }
    </style>
</head>
<body>
    <div id="searchBar">
        <input type="text" />
        <span title="Clear search">X</span>
        <input type="button" value="search" />
    </div>
</body>
</html>

答案 2 :(得分:0)

$().ready(function() {
    // if text input field value is not empty show the "X" button
    $("#field").keyup(function() {
        $("#x").fadeIn();
        if ($.trim($("#field").val()) == "") {
            $("#x").fadeOut();
        }
    });
    // on click of "X", delete input field value and hide "X"
    $("#x").click(function() {
        $("#field").val("");
        $(this).hide();
    });
});

查看此jsfiddle

相关问题