           # Move up
           CURRENT_INDEX -= 1 if CURRENT_INDEX > 0
 
-        @highlightRowAtIndex(CURRENT_INDEX)
+        @highlightRowAtIndex($listItems, CURRENT_INDEX) if CURRENT_INDEX isnt PREV_INDEX
 
         return false
+
+      if currentKeyCode is 13
+        @selectRowAtIndex CURRENT_INDEX
 
   removeArrayKeyEvent: ->
     $('body').off 'keydown'
 
-  highlightRowAtIndex: (index, prevIndex) ->
+  highlightRowAtIndex: ($listItems, index) ->
     # Remove the class for the previously focused row
     $('.is-focused', @dropdown).removeClass 'is-focused'
 
     # Update the class for the row at the specific index
-    selector = ".dropdown-content li:not(.divider):eq(#{index})"
-    if @dropdown.find(".dropdown-toggle-page").length
-      selector = ".dropdown-page-one #{selector}"
-
-    $listItem = $(selector, @dropdown)
+    $listItem = $listItems.eq(index)
     $listItem.addClass "is-focused"
 
     # Dropdown content scroll area

        data: =>
          return @fullData
        callback: (data) =>
          @parseData data
          @highlightRow 1
        enterCallback: =>
          if @enterCallback
            @selectFirstRow()

    # Event listeners



      return selectedObject

  selectRowAtIndex: (index) ->
    selector = ".dropdown-content li:not(.divider):eq(#{index}) a"

    if @dropdown.find(".dropdown-toggle-page").length
      selector = ".dropdown-page-one #{selector}"

    # simulate a click on the first link
    $(selector).trigger "click"
