2012-04-07 15 views
1
私は、誰かがリンクをクリックしたとき、親のdivにフォーカスを設定したい

でアンカータグをクリックするにはどうすればよい異なる要素にフォーカスを設定する方法しばらくのhref

<li class="active"> 
    <a href="#about">Link to the parent div</a> 
</li> 

<div id="#parent"> 
    <div id="about">dummy data</div> 
    <div id="news">dummy data</div> 
</div> 

http://jsfiddle.net/bipin000/PGzwc/

+0

正確にはどういう意味ですか? Mr Listerとmrtshermanは、あなたが達成したいことについて異なる考えを持っていますか?それとも、問題は、なぜそれを達成したいのですか? HTML自体を変更することは不可能ですが、Javascriptを追加することはできますか? –

答えて

0

document.getElementById('parent').focus()をそのまま使用してください。 updated jsFiddleを参照してください。

しかし、divがフォーカスを取得したときに何が起こるはずですか? Divsはフォーカスを得ると何も変わらない!

編集:
クリックしたとき<a>parentの一番上に文書をスクロールしたい場合は、これは何が必要です:document.body.scrollTo(0, document.getElementById('parent').offsetTop); return false;once more updated jsFiddleを参照してください。

しかし、それがあなたが望むものでなければ、ちょうどそう言いなさい!

+0

「フォーカス」と言えば、「約」ではなく「親」というIDを持つアンカーにリンクが移動することを意味していました。私は分かりません。私は彼がこれで達成しようとしていることを知らないが、代わりに彼のリンクを変更して「親」を目標とすることはしない。 – mrtsherman

0

アニメーションのjQuery解決策:

http://jsfiddle.net/PGzwc/5/

$('a').click(function(e) { 
    e.preventDefault();  
    $('body').animate({ scrollTop: $('#parent').offset().top }, 'slow'); 
});​ 

だけ#タグはそのidを持つ要素を検索し、ページの一番上にそれを持って来るためにブラウザに指示

<a href="#about">Home</a> 
      to 
<a href="#parent">Home</a> 

変更。

+0

私は親にフォーカスを設定したいが、リンクはその子になるべきである –

+0

それはそのようには機能しません。なぜそれは重要ですか? – mrtsherman

+0

どのように私はこれを達成することができますか私はそのフィドルを作成してください見てくださいhttp://jsfiddle.net/bipin000/PGzwc/1/ –

関連する問題