2016-09-04 7 views
-1

JQueryを使用してURLを分割して特定の値を取得したい場合、その値が設定されている場合、その値に対応する特定の「div」を表示します。例:JQueryを使用したURLの分割

フラグメント識別子 '#'からURLを分割し、 'div1'の後に値を取得します。

「#」の後の値が「div1」の場合、javascript/jqueryを使用してチェックしたい場合、「div1」と表示します。

var url = http://www.example.com/index.php#div1, 
hash = url.split('#')[1]; 

if(hash == 'div1'){ 
$('.div1').show(); 
//if the hash is equal to 'div1' show the div with the class 'div1' 
} 
+0

から#を削除する必要があります質問は何ですか?あなたは何が必要ですか? – Vitorlui

+0

[あなたが試したこと](http://whathaveyoutried.com)の表示を忘れたようです。作業命令に何が必要かを尋ねるのではなく、コードを自分で記述しようとするより多くの時間を費やすことを検討してください。 – zzzzBov

+0

@zzzzBov質問に含まれるコードが彼が試したものだと確信しています –

答えて

2

ちょうどURL http://yoursite.com/page#div1指定されたidたとえば

、とlocation.hashを使用し、分割を行う必要がありません、location.hash#div1を返します。これを使用して適切な要素を選択することができます。

ID方法:

// JS 
$(window.location.hash).show(); 

<!-- HTML --> 
<div id="div1">Hidden</div> 

クラスメソッド:また

、あなたがクラスを使用する必要がある場合、あなたはlocation.hash

// JS 
// The substr method removes the `#` from the beginning. 
// You can just as easily use `replace` 
var hash = window.location.hash.substr(1); 

$('.' + hash).show(); 

<!-- HTML --> 
<div class="div1">Hidden</div> 
+0

#はハッシュの一部です – Musa

+0

OPはidではなくクラスを使用していることを指摘する価値があります。 –

+0

ちょっと@Musa ..私は '#'問題が最初に出現するのを修正しました。あなたはsubstr(1)を使ってそれを削除できます。 '#'だけが削除されます! – Khalid

関連する問題