URLで渡されたハッシュに基づいてJavaScriptをトリガーしています。
しかし、ハッシュが私が期待しているものでない場合、私はトリガーしたくありません。
予想されるハッシュのリストは、data-category
属性を使用して定義されます。
ハッシュが配列内にあるかどうかを確認できるように、このデータの配列を取得するにはどうすればよいですか?
これが私が与えられたHTMLです:
<div class="filter_padder" id="nav_channels">
<div class="filter_wrapper" style="max-width:650px;">
<div class="filter selected" data-category="cat-all">ALL</div>
<div class="filter" data-category="MusicWorld">MusicWorld</div>
<div class="filter" data-category="Awards">Awards</div>
<div class="filter" data-category="MX">Exchange</div>
<div class="filter last-child" data-category="Com">Community</div>
<div class="clear"></div>
</div>
</div>
Javascript:
// set any hash in the url to a variable
var hash = location.hash.replace('#', '');
// see if my hash is expected (would like to handle this dynamically)
if(hash === (cat_all|Awards|MX|Com)) {
doSomething();
}
しかし、「ハッシュ」と比較する要素のリストを動的に作成する方法がわかりません。私はそれが次のようなものだと思います:
$('#nav_channels').data('category');
しかし、それを機能させることはできません。