2011-02-07 4 views
0

の一部に基づいて要素もののループ私はJavaScriptで_dropMenuで終わるページ上のすべての要素を非表示にする...のように、これは私がどのようにDOM名

window.onload = function() { 
    hideNav(); 
}; 

    function hideNav(){ 
     myArray = element("_dropMenu");// this is what need changing 
     for (i=0;i<=5;i++) 
     { 
     i.style.visibility = 'hidden'; 
     } 
    } 

を持っているもの。これは明らかにされています間違っていますが、最初に_dropMenuで終わるページのすべての要素を取得してループし、それらをループして非表示にする方法はありますか?jqueryを追加する必要がある場合は、ページのプロトタイプしかないのでjavascriptを使用します...

+0

要素を_dropMenuで終了する必要がありますか、_dropMenuクラスを追加するだけでマークアップを変更できますか?私が尋ねる理由は、これにより、あなたが必要とするものをより簡単に達成することが容易になるからです。 – Loktar

+0

'_dropMenu'で終わる要素IDですか? –

+0

私はそれを変更することはできません....はい私はそれを簡単にするだろうが、私は傾けることができると思う – Trace

答えて

6

jQueryには、指定された文字列で終わる属性を持つ要素を見つけるセレクタがあります。

$('[id$="_dropMenu]') 

これは、エレメントタイプ(例:あなたが気にしている要素がdivやそのようなものであれば)、そのまま動作します。

シーンの裏側では、jqueryは指定された要素のセットをループし、element["id"].substring(element["id"].length-"_dropMenu".length)==="_dropMenu"かどうかをチェックしています。

+0

+1の裏には –

1

ただ、プロトタイプは、この場合、jQueryのに非常によく似ていると指摘:

$$('[id$="_dropMenu"]').invoke('hide'); 

賞賛Jishnu & JacobMを第1のセレクタを取得するため。

関連する問題