2014-01-02 3 views
0

После отправки, если страница слишком велика, пользователь должен прокрутить вниз, чтобы увидеть результаты, полученные от foo.php, я хочу, чтобы он заставлял браузер прокручиваться до этого результата сообщение, если возможно. Я очень хочу сделать что угодно, чтобы автоматически прокручивать страницу, не нужно использовать ajax. и т.д.scrool внизу страницы или результат, если возможно

$(function(){ 
     $('button[type=submit]').click(function(e){ 
      e.preventDefault(); 
      $.ajax({ 
       type: "POST", 
       url: "foo.php", 
       data: $("#myform").serialize(), 
       beforeSend: function(){ 
        $('#result').html('<div class="success"><img src="../images/loading-blue.gif" width="25" /></div>'); 
       }, 
       success: function(data){ 
        $('#result').html(data); 
        //var objDiv = document.getElementById("#result"); 
        //objDiv.scrollTop = objDiv.scrollHeight; 
        //(example I found online, didn't work) 
       } 
      }); 
     }); 
    }); 

ответ

3

В JQuery, это должно быть ваш билет.

$('html, body').animate({scrollTop:$(document).height()}, 'slow'); 
+0

Я нашел это также, будет ли это работать $ ('body, html'). Animate ({scrollTop: $ ('form'). Offset(). Bottom}, 'slow'); –

+0

Сделайте снимок! Thats забава программирования, try/catch :-) – Rottingham

+0

неважно, ваш метод работал довольно чертовски красиво. –

1

Использование javascript. Где result находится в id результата div

document.getElementById('result').scrollIntoView(); 
+0

Это хорошо сработало, спасибо –

0

$("body").animate({scrollTop:$("#result").offset().top},500);

Это будет прокручиваться прямо на $("#result").

Для лучшего ответа вы должны также дать нам CSS из #result, потому что мы не знаем, что это положение (абсолютное, фиксированный, статическим, относительный)

0

Если результат действительно последний элемент на странице, улучшение в ответ Rottingham был бы сделать это:

$("html, body").animate({scrollTop:$(document).height()-$(window).height(), "slow"); 

Это лучше, потому что время, указанное во втором параметре должно быть время, которое требуется для вашего окна, чтобы дойти до конца страницы, в то время как с Rottingham-х ответ, он будет двигаться слишком быстро.

+0

действительно движется с идеальной скоростью, спасибо. –

+0

@AlbertD Это только ваши личные предпочтения. Это не меняет того факта, что документ прокручивается на дно до 600 мс, указанных для ключевого слова «медленное». – scribblemaniac

Смежные вопросы