Respostas:
Mude esta linha do contato de
var contactForm = new VarienForm('contactFormNew', true);
com
var contactForm = new VarienForm('contactFormNew', false);
O segundo parâmetro significa "foco no primeiro campo". É por isso que você obtém o rolagem para baixo.
Se você trabalha para uma empresa que terceiriza o desenvolvimento de back-end, como eu, talvez não consiga acessar o modelo de formulário. Nesse caso, você não poderá alterar os argumentos da função VarienForm. (Se você pode alterar esses argumentos, de acordo com a resposta aprovada, deve).
Você pode adicionar o código (fornecido abaixo) ao corpo da página afetada em uma <script>
tag.
Para resumir, o código espera pela primeira vez que o elemento focado é alterado, depois desfoca esse elemento e redefine a rolagem para o topo da página. Se nada acontecer dentro de dez segundos após a execução do script, ele será desativado. Essa é apenas uma salvaguarda para impedir que o script seja executado para sempre no caso de um erro.
//KILL AUTOFOCUS
(function(){
var lastActiveElement = document.activeElement;
//time elapsed in MS
var time = 0;
//stop checking after 10 seconds
var stopTime = 10000;
//interval to check for changes
var intervalTime = 20;
function _Check_For_Form_Validation(){
if ( document.activeElement != lastActiveElement ){
document.activeElement.blur();
document.documentElement.scrollTop = 0;
clearInterval( interval );
}
if ( time >= stopTime ){
clearInterval( interval );
}
}
var interval = setInterval( function(){
time += intervalTime;
_Check_For_Form_Validation();
}, intervalTime);
})();