JQuery stoppt nicht

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • JQuery stoppt nicht

    Hey.
    Habe ein folgendes Jquery mit dem ich meinen seiteninhalt nachlade.
    Jedoch bekomme ich das Script nicht mit meiner if Abfrage gestoppt.
    Wenn ich einen leeren kontent als request bekomme ist die variable stoping gesetzt und wird in der aufgerufenen funktion trotzdem weiter ausgeführt. warum?

    edit: das zweite problem ist, sobald genug kontent erreicht wurde, hört das script auch nicht auf weiter zu laden. obwohl der scrollbalken mittlerweile schon wieder in der mitte angekommen ist.
    dabei soll doch nur nachgeladen werden wenn man runter scrollt.
    das erste eintreffen der funktion funktioniert auch. aber sobald unten läd er und läd und läd

    HTML-Code:
       <script type="text/javascript">
    
    $(document).ready(function(){
    
    var stoping;
    
    	function lastAddedLiveFunc()
    	{
    		
    
    			if (stoping !="stop")
    			{
    					$('div#lastPostsLoader').html('<img src="loader.gif">');
    					
    					$.get("loadmore.php", function(data)
    					{
    						if (data != "") 
    						{
    							$(".items").append(data);
    						}
    						else 
    						{ 
    							var stoping = "stop";
    						}
    												   
    						
    						
    						$('div#lastPostsLoader').empty();
    												   
    					});
    			}
    	};
    	
    
    
    
      $(window).scroll(function(){
    
          var wintop = $(window).scrollTop(), 
    docheight = $(document).height(), 
    winheight = $(window).height();
          var  scrolltrigger = 0.95;
    
          if  ((wintop/(docheight-winheight)) > scrolltrigger) {
             console.log('scroll bottom');
             
    
    		 lastAddedLiveFunc();
    		 
          }
      });
    
    });
    </script>
    Zuletzt geändert von Marcus-24-D; 11.08.2012, 20:12.

  • #2
    Hallo,

    wenn du in einer inneren Funktion „stoping“ (wird eigentlich stopping geschrieben) mit dem var-Schlüsselwort neu definierst, wird die gleichnamige Variable der äußeren Funktion überlagert, ansonsten haben die beiden nichts miteinander zu tun. Lass im else-Teil einfach das „var“ weg.

    Gruß,

    Amica
    Zuletzt geändert von AmicaNoctis; 11.08.2012, 20:10.
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      hi, danke für antwort.
      also ich weiß schon das stopping mit pp geschrieben wird *g.. nur hatte es beim ersten anlauf durch schnelles tippen naja usw usw... *verteidig* *gg

      ok, also. eigentlich hatte ich das auch gemacht wie du sagtest, aber ohne jeglichen erfolg. ich habe aus verzweiflung das var hinzugefügt und die variable
      überschrieben.

      Kommentar


      • #4
        Zitat von Marcus-24-D Beitrag anzeigen
        ich habe aus verzweiflung das var hinzugefügt und die variable
        überschrieben.
        Dann solltest du das rückgängig machen und mal untersuchen, was in data wirklich drin steht, denn vielleicht ist es nie der leere String. Ich würde Firebug benutzen, um dem auf die Schliche zu kommen.
        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
        Super, danke!
        [/COLOR]

        Kommentar


        • #5
          mh ja..aber eigentlich kann in data nichts drin stehn wenn ich eine leere php datei abfrage. aber ich schau mir des mal mit firebug genauer an..danke dir

          Kommentar


          • #6
            Zitat von Marcus-24-D Beitrag anzeigen
            mh ja..aber eigentlich kann in data nichts drin stehn wenn ich eine leere php datei abfrage. aber ich schau mir des mal mit firebug genauer an..danke dir
            Laut jQuery Doku kann data je nach Content-Type verschiedene Typen annehmen. Wenn es aus irgendeinem Grund ein leeres JSON-Objekt oder ein DOM-Dokument ist, ist das nicht dasselbe wie ein leerer String. Darauf wollte ich hinaus.
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar

            Lädt...
            X