personalizado - ¿Cómo escribo mi propio diálogo de confirmación en JavaScript?
mensaje de confirmacion jquery (5)
Podría usar la ventana. showModalDialog ( mozilla ), pero es una función no estándar introducida por Internet Explorer. Ahora también es compatible con Firefox 3 y Safari (no estoy seguro de qué versión, pero al menos 3.1 y superior, pero no el iPhone).
Quiero escribir algo que actúe como confirm () en JavaScript, pero quiero escribirlo yo mismo para poder despellejar el cuadro de diálogo. Al tener problemas para pensar cómo básicamente forzaría el hilo de JavaScript para esperar hasta que el usuario responda y luego devuelva verdadero o falso.
Realmente desea utilizar un marco de trabajo para esto, debido a la cantidad de problemas extraños entre navegadores que encontrará tratando de construirlo usted mismo.
He obtenido buenos resultados utilizando jqModal , un complemento para el framework jQuery que te permite definir diálogos modales, pero de ninguna manera es la única opción; intente buscar en Google jquery modal o yui modal para algunas alternativas.
Si yo fuera tú, miraría una de las populares bibliotecas de JavaScript. La mayoría contiene algún tipo de diálogo modal.
Una pareja que encontré para JQuery son jqModal y SimpleModal .
Cuando construya el diálogo modal, tendrá que vincular eventos a los botones, por lo que haría algo como:
function askUserYesOrNo() {
var myDialog = $(''<div class="mydialog"><p>Yes or No?</p><input type="button" id="yes" value="Yes"/><input type="button" id="no" value="No"/></div>'');
$("#yes").click(handleYes);
$("#no").click(handleNo);
myDialog.modal(); //This would have to be replaced by whatever syntax the modal framework uses
}
function handleYes() {
//handle yes...
}
function handleNo() {
//handle no...
}
Para Mootools, hay Custom.Confirm de Moo.rd y Windoo.Confirm para su referencia.
Una caja de luz modal YUI escueta ( ejemplo ):