2010-11-16 37 views
0

所有表格都顯示..我只想讓#google-search在頁面加載時處於活動狀態。謝謝jquery搜索問題。所有表格都顯示

$(".header-search-input").keyup(function() { 
    $(".header-search-input").val($(this).val()); 
}); 

var $searchByLinks = $("#search-by > a"); 

$searchByLinks.click(function() { 
    var $el = $(this) 
    $(".header-search-form").hide(); 
    $($el.attr("href")).show(); 
    $searchByLinks.removeClass("cur-search"); 
    $el.addClass("cur-search"); 
    return false; 
}); 


    <div id="search-by"> 

    <a class="cur-search" href="#google-search">Google</a> 
    <a href="#image-search">Images</a> 
    <a href="#youtube-search">Youtube</a> 
    <a href="#maps-search">Maps</a> 
    </div> 

回答

0

我認爲這應該工作,以隱藏不被類名「CUR搜索」所代表的各個環節:

$(document).ready(
    function(){ 
     $('#search-by a:not(".cur-search")').hide(); 
    }); 

JS Fiddle demo: http://jsfiddle.net/davidThomas/aZUgw/

,或者,如果你不知道具體類的元素不隱藏:

$(document).ready(
    function(){ 
     $('#search-by a').not(':contains(Google)').hide(); 
    }); 

JS Fiddle demo: http://jsfiddle.net/davidThomas/aZUgw/1/


假設這是你想要只顯示第一表單元素,你可以使用:

$('form:gt(0)').hide(); 

其中採用gt(),我懷疑是顯而易見的,可以隱藏所有form元素與指數大於0.

JS Fiddle demo at: http://jsfiddle.net/davidThomas/gnbkS/3/

,或者,你可以這樣做:

$('form').each(
    function(){ 
     var curForm = $('.cur-search').attr('href').substr(1); 
     if (this.id != curForm) { 
      $(this).hide(); 
     } 
    }); 

這是一個有點亂,但發現要顯示(基於與cur-search類的鏈接),它form,然後通過所有的迭代制定出表明和隱藏其他表格的表格。

JS Fiddle demo at: http://jsfiddle.net/davidThomas/gnbkS/4/

+0

沒有它在這裏不工作是鏈接到網站.. www.pocetna.net非常感謝你的幫助 – zubak 2010-11-16 11:59:58

+0

JS小提示建議id * does *工作。如果您可以將代碼示例發佈到[JS Fiddle](http://jsfiddle.net/)或[JS Bin](http://jsbin.com/),我會爲您尋找。順便說一下,您的網頁無法驗證:http://validator.w3.org/check?uri=http://www.pocetna.net/&charset=(detect+automatically)&doctype=Inline&group=0 – 2010-11-16 12:07:35

+0

現在就開始驗證。 :)看這裏http://jsfiddle.net/gnbkS/1/我想只顯示谷歌的第一..但在你的例子菜單disapers了,只有谷歌顯示.. – zubak 2010-11-16 12:13:36