     if elWithTooltip and DOMUtils.nodeIsVisible(elWithTooltip)
       if elWithTooltip isnt @_lastTarget
         @_onTooltipEnter(elWithTooltip)
-    else
-      @_hideTooltip() if @state.display
+    else if @state.display
+      @_hideTooltip()
 
   onMouseOut: (e) =>
     if @_elementWithTooltip(e.fromElement) and not @_elementWithTooltip(e.toElement)
       @_onTooltipLeave()
 
   onMouseDown: (e) =>
-    if @state.display then @_hideTooltip()
+    if @state.display
+      @_hideTooltip()
 
   _elementWithTooltip: (target) =>
     while target

  _onTooltipEnter: (target) =>
    # https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver
    @_mutationObserver?.disconnect()
    @_mutationObserver = new MutationObserver @_onTooltipLeave
    @_mutationObserver.observe(target.parentNode, attributes: true, subtree: true, childList: true)

    @_lastTarget = target

    clearTimeout @_showTimeout
    clearTimeout @_showDelayTimeout
    @_mutationObserver?.disconnect()
    @_enteredTooltip = false

  render: =>
    <div className="tooltip-wrap #{@state.pos}" style={@_positionStyles()}>
