JQuery stoppt nicht

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 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>
    Last edited by 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
    Last edited by 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]

    Comment


    • #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.

      Comment


      • #4
        Originally posted by Marcus-24-D View Post
        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]

        Comment


        • #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

          Comment


          • #6
            Originally posted by Marcus-24-D View Post
            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]

            Comment

            Working...
            X