Nasir
Nasir

Reputation: 4865

How do I position a div next to a mouse click using JQuery?

How do I position a div next to a mouse click using JQuery?

Thanks

Upvotes: 26

Views: 42617

Answers (2)

Artem Barger
Artem Barger

Reputation: 41232

You can try:

$( "td").click( function(event) {
  $("#divId").css( {position:"absolute", top:event.pageY, left: event.pageX});
});

After additional question was asked in the comment:

$( "td").click( function(event) {
  var div = $("#divId");
  div.css( {
      position:"absolute", 
      top:event.pageY, 
      left: event.pageX});

  var delayTimer = setTimeout( function( ) {
        $that.fadeIn( "slow");
     }, 100);

  div.mouseover( function( event) {
     if (delayTimer)
         clearTimeout( delayTimer);
  }).mouseout( function(){
     if (delayTimer)
         clearTimeout( delayTimer);
     var $that = $(this);
     delayTimer = setTimeout( function( ) {
        $that.fadeOut( "slow");
     }, 500)         
  });
});

Upvotes: 37

A. M.
A. M.

Reputation: 565

Something like:

$('#cell').bind('click',
    function(e){
        $('#div').css('left',e.pageX + 'px' );
        $('#div').css('top',e.pageY + 'px' ); });

The div's position should be set to absolute.

Upvotes: 2

Related Questions