0

私がこれまでに持っているもの:

$("#navigation li a[id]").click(function() {
  $("#" + this.id.substr(1)).show(600)
     .siblings('.toggleDiv').slideUp(600);
});




          <!-- Begin Naviagtion -->
     <div id="navigation">

             <ul>
                <li><a id="babout">Canada</a></li>
                <li><a id="bcontact">USA</a></li>
                <li><a id="bsearch">Mexico</a></li>
         </ul>   

         </div>
         <!-- End Naviagtion -->



<br /><br />





<!-- Begin Search -->
        <div class="toggleDiv" id="search" style="">
               Mexico Staff
        </div>
     <!-- End Search -->

 <!-- Begin About -->
        <div class="toggleDiv" id="about" style="">
                Canada Staff
        </div>
     <!-- End About -->

         <!-- Begin Contact -->
        <div class="toggleDiv" id="contact" style="">
                USA Staff
        </div>
     <!-- End Contact -->

http://jsfiddle.net/q6ncx/12/

3つのオプションのいずれかがすでに選択されている状態で、ユーザーをこのページにリンクできるようにする必要があります。

すなわち。mysite.com/staff.php#Canada-「カナダ」リンクはすでに選択されています。

これはjQueryで可能ですか?これはphpで簡単に実行できることはわかっていますが、可能であればjsを使い続けたいと思います。

4

2 に答える 2

1

URL からハッシュを取得し、適切なリンクのクリックをトリガーします。

var hash=location.hash;

if( hash && hash.substr(1).length){
   /* use "filter" to match hash to link text*/
   $('#navigation li a').filter(function(){
         return $.trim( $(this).text())==hash.substr(1) ;
    }).click(); 
}
于 2013-01-11T00:26:18.213 に答える
0

内部リンクを使用します。URL は mysite.com/staff.php#Canada になり、アンカーは

<a  href="#Canada" id="babout">Canada</a>

JS でイベントをトリガーする場合:

if(window.location.hash === "Canada" ||
window.location.hash === "somethingElse") {
    //do something
}
于 2013-01-11T00:36:30.737 に答える