position : fixed;
will avoid the automatic scroll to input as it won't be in the scrollable area.
Here is a fast written example, based on this answer, and using jQuery, sorry…
CSS
.hiddenInput{position: fixed; opacity: 0;}
jQuery
var inputTop, inputBottom;
window.onload = function()
{
inputTop = $('#input').offset().top
inputBottom = inputTop + $('#input').height();
}
function isScrolledIntoView(el)
{
var docViewTop = $(window).scrollTop();
var docViewBottom = docViewTop + $(window).height();
return ((inputBottom <= docViewBottom) && (inputTop >= docViewTop));
}
function hideInput()
{
var el = $('#input');
if ( isScrolledIntoView(el) ){
el.removeClass();
}else{
el.addClass('hiddenInput');
el.css({top: inputTop});
}
}
window.onscroll = hideInput;
working fiddle