var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope) {
  $scope.selected = 3;
  $scope.options = [1,2,3,4,5,6];
  
  setInterval(function(){
    $scope.$apply();
  }, 1000)
});
<!DOCTYPE html>
<html>

  <head>
    <meta charset="utf-8" />
    <title>AngularJS Plunker</title>
    <script>document.write('<base href="' + document.location + '" />');</script>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0-rc.2/angular.js"></script>
  </head>

  <body ng-app="bug-demo" ng-init="selected = 3">
    <select ng-model="selected" ng-options="option for option in [1,2,3,4,5,6]"></select>
  </body>
  
  <script>
    angular.module("bug-demo",[]).run(function($rootScope){
      setInterval(function(){
          $rootScope.$apply();
      }, 100)
    })
  </script>

</html>
/* Put your css in here */

#Firefox

1. Click on the select element (so the options dropdown list displays)
2. Hover over an item that is not currently selected.
3. Wait the $scope.$apply() setInterval.
4. *observe* The hover indicator will move away from the item your mouse is over, and instead jump to the option matching model.

ALSO

1. Focus the select input.
2. Press your down arrow key.
3. *observe* the displayed value goes from 3 to 4, and then after the $scope.$apply() it is moved back to 3.