diff --git a/js/mediarack.js b/js/mediarack.js
index c86d3b6cd51c10fd1bb306d24e047e1b3bc5d5c2..8ecc1408b14b9a1bc6bdd4c62296b7499e4393d5 100644
--- a/js/mediarack.js
+++ b/js/mediarack.js
@@ -159,15 +159,6 @@ function getShows() {
             var seasonTitle = 'Season '+season.season;
           }
           var liSeason = $('<li class="season list-group-item" data-season="'+season.season+'"><strong>'+seasonTitle+'</strong><span class="badge">'+season.count+'</span></li>');
-          liSeason.bind('click', function() {
-            getEpisodes($(this).parent().data('showid'), $(this).data('season'));
-          });
-          liSeason.hover(function() {
-            $("#poster_"+show.id).error(function() {$(this).attr('src', cdn('show/'+cleanname(show.folder)+'/poster.jpg'))});
-            $("#poster_"+show.id).attr('src', cdn('show/'+cleanname(show.folder)+'/'+season.season+'/poster.jpg'));
-          }, function() {
-            $("#poster_"+show.id).attr('src', cdn('show/'+cleanname(show.folder)+'/poster.jpg'));
-          });
           ulSeasons.append(liSeason);
         });
         divInfo.fadeTo(0, infoOpacity);
@@ -195,6 +186,21 @@ function getShows() {
         });
         i++;
       });
+
+      $.each($('.season'), function(key, eSeason) {
+        var showId = $(this).parent().data('showid');
+        var showFolder = $('#show_'+showId).data('folder');
+          $(this).on('click', function() {
+            getEpisodes(showId, $(this).data('season'));
+          });
+          $(this).hover(function() {
+            $("#poster_"+showId).error(function() {$(this).attr('src', cdn('show/'+cleanname(showFolder)+'/poster.jpg'))});
+            $("#poster_"+showId).attr('src', cdn('show/'+cleanname(showFolder)+'/'+$(this).data('season')+'/poster.jpg'));
+          }, function() {
+            $("#poster_"+showId).attr('src', cdn('show/'+cleanname(showFolder)+'/poster.jpg'));
+          });
+        });
+
       showOffset = showOffset+showLimit;
       if(i >= showLimit) {
         loadShows = true;
@@ -241,9 +247,9 @@ function getEpisodes(show, season) {
       olEpisodes.hide();
       liSeason.append(olEpisodes);
       olEpisodes.slideDown();
-      liSeason.unbind('click').bind('click', function() {
+      liSeason.off('click').on('click', function() {
         $(this).find("ul.episodes").slideUp(function(){$(this).remove();});
-        $(this).unbind('click').bind('click', function() {
+        $(this).off('click').on('click', function() {
           getEpisodes($(this).parent().data('showid'), $(this).data('season'));
         });
       });