Ich habe es nun selber gelöst.
Es lag wohl an der for-schleife.
Meine Lösung ist:

var parentClass = "viewport-trigger";
var childClass = "waiting";
var partents;
var windowHeight;

var init = function(){
  partents = document.getElementsByClassName(parentClass);
  windowHeight = window.innerHeight;
  window.addEventListener("scroll", check);
  window.addEventListener("resize", init);
}

var check = function(){

  [...partents].forEach(
      (parent, index, array) => {

        var top = parent.getBoundingClientRect().top;

        if(top - (windowHeight - 400) <= 0){

          var childs = parent.getElementsByClassName(childClass);

          [...childs].forEach(
              (child, index, array) => {
                child.className = child.className.replace("cycle1", "slide_in_first")
                                                 .replace("cycle2", "slide_in_second")
                                                 .replace("waiting", "");
              }
          );
        }
      }
  );
}

init();   
...zur Antwort

Ja, es stimmt.
Unter Bruderhass versteht man sowohl Hass unter Brüdern als auch wenn man eine Person hasst die man nicht kennt und nicht verwandt ist. Ich kenne den Begriff durch eine japanische Serie. Dort wurde der Begriff aber nur flüchtig erklärt. Komischerweise findet man dazu nichts weiter im Internet.

...zur Antwort

Ich habe ein passendest Plugin dazu gefunden! Hier der Link: http://dev.bukkit.org/bukkit-plugins/better-proxy-join

...zur Antwort