Recientemente, estoy escribiendo un marco de proyectos y escribiendo una clase jQueryMessageBox para usar el diálogo () en jQuery UI para mostrar el cuadro de mensaje. Para que el método sea fácil de llamar, se agrega una página de juicio automático para determinar si se agregan UI.JS y UI.CSS. El código es el siguiente:
// si Ui.js no está incluido, referencia if ($ ('script [src $ = "" jQuery-ui-1.8.11.custom.min.js ""]'). Longitud == 0) {{$ ("" <script src = '/js/jquery-ui-1.8.11.custom.min.js' tyte = 'text/jaS />"). rel = "" Stylesheet "" type = "" text /css "" />').appendto('head ');Sin embargo, el código CSS no se cargará de inmediato, por lo que no habrá estilo al mostrar el cuadro de diálogo (está bien en IE9, porque incluso si CSS se descarga después de descargarlo en IE9, los elementos de la página serán rediseñados, mientras que IE8 no lo hará). La solución a este problema se puede hacer usando AJAX. Cuando se cargue el CSS, se mostrará el diálogo, de modo que se pueda mostrar con el estilo. El código es el siguiente:
if ($ ('link [ref $ = "" jQuery-ui-1.8.14.custom.css ""]'). longitud == 0) {$ .AJAX ({url: '/css/jquery-ui-1.8.14.custom.css', éxito: function (data) {// Elemento de estilo y append it a la cabeza // type = "text/css"> ' + data.replace (/url/(images/g,' url (/css/images ') +' </style> '). AppendTo (' head '); // dialog () script;}});