src/nsPopover.js
function(delay, e) {
              // Disable popover if ns-popover value is false
              if ($parse(attrs.nsPopover)(scope) === false) {
                return;
              }

              $timeout.cancel(displayer_.id_);

              if (!isDef(delay)) {
                delay = 0;
              }

              // hide any popovers being displayed
              if (options.group) {
                $rootScope.$broadcast('ns:popover:hide', options.group);
              }

              displayer_.id_ = $timeout(function() {
                if (true === $popover.isOpen) {
                  return;
                }

                $popover.isOpen = true;
                $popover.css('display', 'block');

                // position the popover accordingly to the defined placement around the
                // |elm|.
                var elmRect = getBoundingClientRect(elm[0]);

                // If the mouse-relative options is specified we need to adjust the
                // element client rect to the current mouse coordinates.
                if (options.mouseRelative) {
                  elmRect = adjustRect(elmRect, options.mouseRelativeX, options.mouseRelativeY, e);
                }

                move($popover, placement_, align_, elmRect, $triangle);
                addEventListeners();

                // Hide the popover without delay on the popover click events.
                if (true === options.hideOnInsideClick) {
                  $popover.on('click', insideClickHandler);
                }

                // Hide the popover without delay on outside click events.
                if (true === options.hideOnOutsideClick) {
                  $document.on('click', outsideClickHandler);
                }

                // Hide the popover without delay on the button click events.
                if (true === options.hideOnButtonClick) {
                  elm.on('click', buttonClickHandler);
                }

                // Call the open callback
                options.onOpen(scope);
              }, delay*1000);
            }
function(delay, e) {
              // Disable popover if ns-popover value is false
              if ($parse(attrs.nsPopover)(scope) === false) {
                return;
              }

              $timeout.cancel(displayer_.id_);

              if (!isDef(delay)) {
                delay = 0;
              }

              // hide any popovers being displayed
              if (options.group) {
                $rootScope.$broadcast('ns:popover:hide', options.group);
              }

              displayer_.id_ = $timeout(function() {
                if (true === $popover.isOpen) {
                  return;
                }

                $popover.isOpen = true;
                $popover.css('display', 'block');

                // position the popover accordingly to the defined placement around the
                // |elm|.
                var elmRect = getBoundingClientRect(elm[0]);

                // If the mouse-relative options is specified we need to adjust the
                // element client rect to the current mouse coordinates.
                if (options.mouseRelative) {
                  elmRect = adjustRect(elmRect, options.mouseRelativeX, options.mouseRelativeY, e);
                }

                move($popover, placement_, align_, elmRect, $triangle);
                addEventListeners();

                // Hide the popover without delay on the popover click events.
                if (true === options.hideOnInsideClick) {
                  $popover.on('click', insideClickHandler);
                }

                // Hide the popover without delay on outside click events.
                if (true === options.hideOnOutsideClick) {
                  $document.on('click', outsideClickHandler);
                }

                // Hide the popover without delay on the button click events.
                if (true === options.hideOnButtonClick) {
                  elm.on('click', buttonClickHandler);
                }

                // Call the open callback
                options.onOpen(scope);
              }, delay*1000);
            }
function ( delay , e ) { // Disable popover if ns-popover value is false
 if ( $parse ( attrs . nsPopover ) ( scope ) === false ) { return ; } $timeout . cancel ( displayer_ . id_ ) ; if ( ! isDef ( delay ) ) { delay = 0 ; } // hide any popovers being displayed
 if ( options . group ) { $rootScope . $broadcast ( 'ns:popover:hide' , options . group ) ; } displayer_ . id_ = $timeout ( function ( ) { if ( true === $popover . isOpen ) { return ; } $popover . isOpen = true ; $popover . css ( 'display' , 'block' ) ; // position the popover accordingly to the defined placement around the
 // |elm|.
 var elmRect = getBoundingClientRect ( elm [ 0 ] ) ; // If the mouse-relative options is specified we need to adjust the
 // element client rect to the current mouse coordinates.
 if ( options . mouseRelative ) { elmRect = adjustRect ( elmRect , options . mouseRelativeX , options . mouseRelativeY , e ) ; } move ( $popover , placement_ , align_ , elmRect , $triangle ) ; addEventListeners ( ) ; // Hide the popover without delay on the popover click events.
 if ( true === options . hideOnInsideClick ) { $popover . on ( 'click' , insideClickHandler ) ; } // Hide the popover without delay on outside click events.
 if ( true === options . hideOnOutsideClick ) { $document . on ( 'click' , outsideClickHandler ) ; } // Hide the popover without delay on the button click events.
 if ( true === options . hideOnButtonClick ) { elm . on ( 'click' , buttonClickHandler ) ; } // Call the open callback
 options . onOpen ( scope ) ; } , delay * 1000 ) ; }
Set the display property of the popover to 'block' after |delay| milliseconds.

@param delay {Number}  The time (in seconds) to wait before set the display property.
@param e {Event}  The event which caused the popover to be shown.
Set the display property of the popover to block after |delay| milliseconds .