Pergunta

Eu quero escrever algo que age como confirm () em javascript, mas eu quero escrevê-lo me para que eu possa esfolar a caixa de diálogo. Em ter dificuldade para pensar em como eu seria basicamente forçar o fio javascript que esperar até as responde de usuário e, em seguida, retornar verdadeiro ou falso.

Foi útil?

Solução

Se eu fosse você, eu iria olhar para uma das bibliotecas JavaScript populares. A maioria contêm algum tipo de diálogo modal.

Um casal que encontrei para JQuery são jqModal e SimpleModal .

Quando você construir o diálogo restrita, você terá que amarrar eventos para os botões, para que você faria algo assim:

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...
}

Outras dicas

Você realmente quer usar uma estrutura para isso, por causa do número de questões cross-browser estranhas que você encontrará tentando construí-lo sozinho.

Eu tive bons resultados usando jqModal , um plugin para o framework jQuery que permite definir diálogos modais, mas é de nenhuma maneira a única opção; tente usar o Google jQuery modal ou yui modal para algumas alternativas.

Para Mootools, existem moo.rd é Custom.Confirm e Windoo.Confirm para sua referência.

Você pode usar a janela. showModalDialog ( mozilla ), mas é uma função não-padrão introduzido pela Internet Explorer. Agora também é suportado no Firefox 3 e Safari (não tenho certeza de qual versão, mas pelo menos 3.1 e highter, mas não o iPhone).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top