0

ウィンドウハッシュに依存するいくつかのアクションを作成しようとしていますdiv id。アンカーに移動します。

<div id="#A1"></div>
<div id="#A2"></div>
<div id="#A3"></div>
<div id="#A4"></div>
......
<div id="#B1"></div>

とjs

    function myWay(){
    //do something  
    }

    if(document.location.hash == "A1"){
             myWay();   
    }
    if(document.location.hash == "A2"){
             myWay();   
    }
    if(document.location.hash == "A3"){
             myWay();   
    }
    .......

if(document.location.hash == "#anchor")私の質問は、30 を超えるアンカーがある場合、JavaScript に30 を超えるアンカーを配置する必要があるということです。検索して一致させる方法はありますか

if (document.location.hash == (this anchor on the page)){
         myWay();
}else{
    something else;
}
4

2 に答える 2

1

この場合、ID は特定のパターンに一致するため、正規表現を使用します。

if (document.location.hash.match(/[A-C][1-4]/)) { ... }

A、B、または C の後に 1 から 4 の数字が続くものと一致します。

ID にパターンがない場合は、ループを使用してみてください。

var ids = ['valid', 'ids', 'etc...'], valid = false;
for (var i = 0; i < ids.length; i ++) {
    if (yourId === ids[i]) valid = true;
}
if (valid) { ... }
于 2013-06-14T01:28:56.493 に答える