Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Lupin en 6 Junio 2015, 18:30 pm



Título: Scrolling Infinito no funciona en Chrome !!!
Publicado por: Lupin en 6 Junio 2015, 18:30 pm
Hola muchachos por favor ayudenme ,ya no se que hacer  :(. El codigo funciona y carga los datos de Mysql pero el scrilling no funciona en Chrome, pero si en explorer. Es decir los datos se deberian  cargar  al llegar la final de la pagina con el scrolling pero no sucede en el Chrome !!!!!! >:( >:(
Código
  1. <!doctype html>
  2. <link rel="stylesheet" type="text/css" media="all" href="css/styles.css">
  3. <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
  4.  $(function(){
  5.      var i = 0;
  6.      agregarContenido();
  7.      $(window).scroll(function(){
  8.          //cuando llegas al final de la página
  9.          if (document.body.scrollHeight - $(this).scrollTop() <= $(this).height()){
  10.              agregarContenido();
  11.  
  12.          }
  13.      });
  14.  
  15.      function agregarContenido(){
  16.          //Agregar el siguiente contenido a mostrar
  17.  
  18.        $.ajax({
  19.        type: 'POST',
  20.        data: {
  21.            accion: 'agregarContenido',
  22.            count: i,
  23.            showing: 2,
  24.  
  25.        },
  26.        url: 'src/controlador.php',
  27.        success: function(result){
  28.         result = JSON.parse(result);
  29.         if(result.estado === "adding"){
  30.         i+=2;
  31.         $("#content").append(result.cadena);
  32.         console.log("agregando datos del "+(i-1)+" al "+i);
  33.         }else{
  34.         console.log(result.cadena);
  35. //alert("No hay registros");
  36.  
  37.  
  38.         }
  39.        }
  40.      });
  41.      }
  42.  });
  43. <meta charset="utf-8">
  44. <title>Documento sin título</title>
  45. </head>
  46.  
  47. <a href="ingreso_paginas.php">Ingresar paginas</a>>
  48.    <div id="container">
  49.        <ul id="content">
  50.  
  51.        </ul>
  52.    </div>
  53.  
  54. </body>
  55. </html>
  56.  
  57.  
Este es el cargador en php
Código
  1. <?php
  2. include "databaseConnector.php";
  3.  
  4. if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') && isset($_POST['accion'])){  
  5.  
  6. $devolver = null;
  7. extract($_POST);
  8. switch($accion){
  9.  
  10. case 'agregarContenido':
  11. $dbh = new databaseConnector();
  12. $stmt = $dbh->prepare("SELECT * FROM repaso LIMIT $count, $showing");
  13. $cadena="";
  14. if($stmt->execute()){
  15. while($row = $stmt->fetch()){
  16. //Mando directamente el html a incrustar,
  17. //pero no es la mejor práctica.
  18. //Solo es un ejemplo.
  19.  
  20. $cadena.= "<li><strong>".$row["id"]."</strong><br />";
  21.         $cadena.= "<img src='img/pag_subidas/".$row['img_pagina']."' width=100% /> </li>";
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31. }
  32. }
  33.  
  34. //si la cadena esta vacia entonces ya no hay nada para agregar
  35.  
  36. if($cadena){
  37. $estado = "adding";
  38. }else{
  39. $estado = "stop";
  40. $cadena = "No hay datos para agregar";
  41. }
  42.  
  43. //devuelvo el estado y la cadena para mostrar
  44. $devolver = array("estado" => $estado, "cadena" => $cadena);
  45. break;
  46.  
  47. default:
  48. echo "default";
  49. break;
  50. }
  51. if ($devolver)
  52.  
  53. echo json_encode($devolver);
  54. }
  55. else {
  56. die('No se está accediendo correctamente');
  57. }
  58. ?>
Iluminen mi camino !!!!!!! que estoy a punto de patear la PC  :-\


Título: Re: Scrolling Infinito no funciona en Chrome !!!
Publicado por: #!drvy en 6 Junio 2015, 19:42 pm
En mi chrome tu código funciona bien. Por lo menos lo que es la parte del JS. Te recomiendo que mires el estado de ScrollHeight que te retorna Chrome y lo compares contra el resto, igual tienes alguna propiedad CSS que lo afecta.

Saludos


Título: Re: Scrolling Infinito no funciona en Chrome !!!
Publicado por: Lupin en 6 Junio 2015, 20:19 pm
Holaaaa #!drvy.
Gracias por ti tiempo por alguna razon, no hace scrolling con width=100% he probado con width=800px y recien funciona
Gracias