Je suis presque sûr que vous ne devriez pas avoir besoin de définir une position :
$("#dialog").dialog();
doit être centré par défaut .
J'ai jeté un coup d'œil à l'article, et j'ai également vérifié ce qui est dit sur le site Web de l'UE. site officiel de jquery-ui sur le positionnement d'un dialogue Il y est question des deux états suivants : initialisation et après initialisation.
Exemples de code - (tiré de jQuery UI 2009-12-03)
Initialise un dialogue avec l'option de position spécifiée.
$('.selector').dialog({ position: 'top' });
Obtenir ou définir l'option de position, après init.
//getter
var position = $('.selector').dialog('option', 'position');
//setter
$('.selector').dialog('option', 'position', 'top');
Je pense que si vous supprimez l'attribut position, vous constaterez qu'il se centre tout seul ; sinon, essayez la deuxième option de réglage où vous définissez 3 éléments de "option" "position" et "centre".