2017-07-14 8 views
3

Ich versuche, ein Bild zu ändern, sobald Sie zu einem bestimmten Punkt blättern. Ich habe Folgendes versucht, aber es ändert sich beim Scrollen.Bildlogo auf Bildlauf ändern

jQuery(function($) { 
$(window).scroll(function() { 
    if($('.navbar').hasClass('navbar-brand')) { 
    $('.navbar .navbar-brand img').attr('src','http://placehold.it/120?text=Original+Logo!'); 
    }else{ 
    $('.navbar .navbar-brand img').attr('src','http://placehold.it/120?text=Original+Logo!'); 
    } 
}); 
}); 

Ich habe versucht, den folgenden Code hinzuzufügen, um es zu wissen, wann zwischen den Bildern zu wechseln, aber nicht

var wn = $(window).scrollTop(); 
    if(wn > 700){ 

Antwort

3

$(function() { 
 
    $(window).scroll(function() { 
 
     if ($(this).scrollTop() > 1000) { 
 
      $('.navbar .navbar-brand img').attr('src','http://placehold.it/220?text=Original+Logo!'); 
 
     } 
 
     if ($(this).scrollTop() < 1000) { 
 
      $('.navbar .navbar-brand img').attr('src','http://placehold.it/120?text=Original+Logo!'); 
 
     } 
 
    }) 
 
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
 
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script> 
 

 
<nav class="navbar navbar-default navbar-fixed-top" > 
 
<a class="navbar-brand first" data-toggle="modal" data-target="#myModal">Start </a> 
 
    
 
    
 
    
 
    <a class="navbar navbar-brand first" data-toggle="modal" data-target="#myModal"><img src='http://placehold.it/120?text=Original+Logo!'></a> 
 
    
 
    
 
    
 
    
 
    <a class="dropdown-toggle btn btn-primary btn-md btn-example dropdown-hover-toggle" data-toggle="dropdown" 
 
> 
 
</a> 
 
    
 
<ul class="dropdown-content dropdown-menu dropdown-menu-right" role="menu" > \t \t \t \t \t \t \t \t 
 
\t \t <li> <a href="#" title="I'm Serious"> Nothing to see here</a> </li> 
 
\t </ul> 
 
</nav> 
 

 
<div class="bbb aaa"> 
 
    
 
</div> 
 

 
<div class="modal fade" id="myModal" role="dialog"> 
 
<div class="modal-dialog" style="width:1500px;"> 
 

 
    <!-- Modal content--> 
 
    <div class="modal-content"> 
 

 
    <div class="modal-header" style="background-color: #003399;"> 
 
     <button type="button" class="close" data-dismiss="modal" style="color: 
 
     #fff;">&times;</button> 
 
     <h4 class="modal-title" style="color: #fff;">Upload New File</h4> 
 
    </div> 
 

 
    <div class="modal-body"> 
 
     <form class="form-horizontal" action="uploadfile.php" method="post" 
 
     name="addservice" enctype="multipart/form-data" align="center" 
 
     onsubmit="return validateForm()"> 
 
    
 
      <label for="filename" class="col-sm-2 control-label">File Name: 
 
      </label> 
 
      <div class="col-sm-4"><input type="text" class="form-control" 
 
      name="filename" id="filename" placeholder="Name of the file" 
 
      maxlength="55" tabindex="1" required></div> 
 

 
      <label for="file" class="col-sm-2">File:</label> 
 
      <div class="col-sm-4"><input type="file" maxlength="11" 
 
      name="file" id="file" class="form-control" tabindex="2" 
 
      required></div> 
 
     
 

 
    
 
      <label for="filedesc" class="col-sm-2">File Description:</label> 
 
      <div class="col-sm-4"><textarea class="form-control" rows="3" 
 
      name=" filedesc" id="filedesc" placeholder="(maximum of 75 
 
      characters)" style="resize: none;" maxlength="75" tabindex="3" 
 
      required></textarea></div> 
 
     
 

 

 

 

 
     <div class="col-sm-4"> 
 
      <div class="form-group"><input class="btn btn-success btn-lg col- 
 
      sm-4" name="submit" type="submit" value="Upload" tabindex="4"> 
 
      <input type="reset" class="btn btn-default btn-lg col-sm-4" 
 
      name="clear" value="Clear" tabindex="5"> 
 
      </div> 
 
     </div> 
 
     </form> 
 
     <div> 
 
    </div> 
 
    </div> <!-- modal body --> 
 

 
    <div class="modal-footer"> 
 
     <button type="button" class="btn btn-default" data- 
 
     dismiss="modal">Close</button> 
 
    </div> 
 

 
    </div> <!-- modal content --> 
 

 
</div> <!-- modal dialog --> 
 
</div> 
 

 

 

 
<h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br> 
 

 
<h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br><h1> sdafsafsdfadsfasdsafdfasdfsadfsadfasd</h1><br>

, die den Trick tun sollten. Wenn Sie es brauchen, um wieder zu ändern die gleiche Funktion, aber die Schaltlogik ...

EDIT

So war dies die erste Bedingung:

if ($(this).scrollTop() > 1000) { 
    $('.navbar .navbar-brand img').attr('src','http://placehold.it/220?text=Original+Logo!'); 
} 

Und jetzt habe ich die zweite Bedingung:

if ($(this).scrollTop() < 1000) { 
    $('.navbar .navbar-brand img').attr('src','http://placehold.it/120?text=Original+Logo!'); 
} 

änderte ich zwei Dinge:

  1. die Zahl im Link
  2. > wurde <

So, jetzt ist die Logik: wenn gescrollt kleiner als 1000px Gebrauch das kleine Bild, und wenn mehr als 1000px Verwendung der große Bild.

+0

@Emanuel https://codepen.io/hansfranz/pen/gRQKEy?editors=1010 schauen Sie sich diesen Codepen an. Nach 1000px senden Sie eine Warnung. Anstatt der Warnung müssen Sie Ihre Logik implementieren. Wie sieht Ihre Kopfzeile aus? – hansTheFranz

+0

Der Codepen funktioniert, das Bild nach 1000px zu ändern, aber ich möchte, dass es zurück zum normalen Logo wechselt, wenn der Benutzer über 1000px zurück scrollt. – Emanuel

+0

Das hat funktioniert, vielen Dank! Ich habe gerade damit gespielt und es funktioniert auch mit einer else-Anweisung. – Emanuel