2

当有人单击链接时,我想将焦点设置在父 div 上我怎么能

<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/

4

2 回答 2

1

只需使用document.getElementById('parent').focus(). 请参阅更新的 jsFiddle

但是当 div 获得焦点时应该发生什么?Divs 在获得焦点时不会改变任何东西!

编辑:
如果您希望在单击时<a>将文档滚动到顶部parent,这就是您需要的:document.body.scrollTo(0, document.getElementById('parent').offsetTop); return false;请参阅再次更新的 jsFiddle

但如果这也不是你想要的,那就直说吧!

于 2012-04-07T06:41:12.797 回答
0

动画jQuery解决方案:

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

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

只是改变

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

#标签告诉浏览器搜索带有该标签的元素id并将其带到页面顶部。

于 2012-04-07T06:38:07.370 回答