2010-03-24 6 views
1

Comme je l'ai dit, IE7 (et IE6 mais je ne me soucie pas tellement de IE6) ne positionne pas la boîte de dialogue correctement sur le redimensionnement de la fenêtre. Lorsque la taille de la fenêtre est redimensionnée, la boîte de dialogue va vers le bas et vers le bas. IE8 FF Chrome Safari fonctionne correctement et la taille et la taille de la boîte de dialogue sont correctes, mais IE7 redimensionne la boîte de dialogue mais les positions sont incorrectes. Quelqu'un sait-il quelque chose à ce sujet?IE7 ne positionne pas la boîte de dialogue correctement sur le redimensionnement de la fenêtre

$("#mydialog").dialog({ 
    autoOpen: false, 
    bgiframe: true, 
    resizable: false, 
    modal: true, 
    title: "", 
    height: 400, 
    overlay: { 
     backgroundColor: '#000', 
     opacity: 0.5 
    } 
}); 
$(window).resize(function(){ 
    $('#mydialog').dialog("option", "height", $(window).height() - 40); 
    $('#mydialog').dialog('option', 'position', 'center'); 
}); 
$("#mydialog").dialog("open"); 
+0

Pour répondre à cela, on aurait besoin de connaître les entrailles de interface utilisateur jQuery. Vous pouvez également poser votre question sur les forums officiels: http://forum.jquery.com/using-jquery-ui –

Répondre

1

Ok, voici une solution de contournement que j'ai trouvée, c'est un peu lent mais ça marche.

$(window).resize(function(){ 
    $('#mydialog').dialog("option", "height", $(window).height() - 40); 
    $('#mydialog').dialog('option', 'position', 'center'); 
    if ($.browser.msie && parseInt($.browser.version) <= 7) { 
     $('#mydialog').dialog('close'); 
     $('#mydialog').dialog('open'); 
    } 
}); 
1

je suis tombé sur cette récemment et a découvert un moyen plus rapide et plus approprié correctif pour IE7, définissez simplement la propriété du corps css à relatif, ce qui représente la façon dont IE7 gère l'objet de la fenêtre.

Puisque vous utilisez jQuery, ce qui suit devrait fonctionner:

$('body').css("position", "relative"); 

J'ai aussi créé ce qui suit pour illustrer le problème et la solution: http://jsfiddle.net/ewsang/7PpcV/

Questions connexes