2013-03-21 25 views
0

当我尝试input.focus();对窗体输入有错误。光标指向该输入但由于我有一个固定的标题,其高度约为100px,输入字段不可见。show above input.focus()

有没有一种方法可以超越输入字段,比如input.focus(-100);

我也试过input.scrollTop();但它没有去任何地方附近的输入。

+0

ü可以创建一个链接 – PSR 2013-03-21 13:18:54

+0

你试过['scrollIntoView'](https://developer.mozilla.org/en-US/docs/DOM /element.scrollIntoView)? – jbabey 2013-03-21 13:19:25

+0

你不能使用window.scrollTop()滚动文档而不是输入吗? – TommyBs 2013-03-21 13:19:31

回答

1

这里有一些想法。

var top = input.offset().top - 100; // or input.position().top + 100; 
$(document).scrollTop(top); 
+0

感谢它的作品就像一个魅力:) – 2013-03-21 13:49:23

1

事情是这样的:http://jsfiddle.net/AzRwm/

<style> 
#h{ 

background:black; 
height:100px; 
position:fixed; 
width:100%; 
} 
#s{ 
height:800px; 
} 
    </style> 
    <header id='h'></header> 
    <div id="s"></div> 
    <input id="i" value='test' /> 
    <script> 
     var i = document.getElementById('i'); 

    window.scrollTo(0,i.offsetTop + 100); 
    </script> 
+0

我认为有一些问题,它总是去顶部。顺便谢谢你的时间和答案。 – 2013-03-21 13:51:24