Positioning jQuery dialog Positioning jQuery dialog jquery jquery

Positioning jQuery dialog


This keeps dialog div in fixed position

this works for me in IE FF chrome and safari

jQuery("#dialogDiv").dialog({    autoOpen: false,     draggable: true,    resizable: false,    height: 'auto',    width: 500,    modal: false,    open: function(event, ui) {        $(event.target).parent().css('position', 'fixed');        $(event.target).parent().css('top', '5px');        $(event.target).parent().css('left', '10px');    }});

when you want dialog box open just call

$('#dialogDiv').dialog('open');


If you make your dialog box's position:absolute, then its taken about of the regular page flow, and you can use the left and top property to place it anywhere on the page.

$('.selector').dialog({ dialogClass: 'myPosition' });

and define the myPosition css class as:

.myPosition {    position: absolute;    right: 200px; /* use a length or percentage */}

You can set the top, left, right, and bottom properties for myPosition using either a length such as in pixels or percentage.


Most of these answers seemed to be workarounds to me, and I wanted to find the official jQuery way to do it. After reading through the .position() docs, I found that it can indeed be done in the initialization of the jQuery widget:

$("#dialog").dialog({    title:title,    position:{my:"right top",at:"right+100 top+100", of:"body"},    width:width,    height:height})

Where the +100 is the distance from the right and top respectively