Skip to content

Instantly share code, notes, and snippets.

@vinicius-stutz
Last active July 23, 2024 16:51
Show Gist options
  • Save vinicius-stutz/6caf02d4936069c69513 to your computer and use it in GitHub Desktop.
Save vinicius-stutz/6caf02d4936069c69513 to your computer and use it in GitHub Desktop.
Máscara p/ telefones com 8 ou 9 dígitos (jquery.mask.js)
<!DOCTYPE html>
<html>
<head>
<title>Máscaras de telefone (Brasil)</title>
<script type='text/javascript' src='//code.jquery.com/jquery-compat-git.js'></script>
<script type='text/javascript' src='//igorescobar.github.io/jQuery-Mask-Plugin/js/jquery.mask.min.js'></script>
</head>
<body>
<p>
<label>
Máscara para campo já com máscara<br />
<input type="text" class="phone" value="(21) 12345-6789" />
</label>
</p>
<p>
<label>
Máscara para campo SOMENTE números<br />
<input type="text" class="phone" value="21123456789" />
</label>
</p>
</body>
</html>
var behavior = function (val) {
return val.replace(/\D/g, '').length === 11 ? '(00) 00000-0000' : '(00) 0000-00009';
},
options = {
onKeyPress: function (val, e, field, options) {
field.mask(behavior.apply({}, arguments), options);
}
};
$('.phone').mask(behavior, options);
@kelvin-dias
Copy link

Muito bom, único que funciona perfeitamente.

@weriston-developer
Copy link

Boa mano, lógica ótima.

@charlesbatista
Copy link

Funcionou perfeitamente no meu projeto. Muito obrigado!

@alves-Moises
Copy link

A mascara não funciona, cara. Ele só entra com o valor de início mas a máscara não é aplicada quando digitamos o valor que queremos.

@celsoandrade
Copy link

pra mim da esse erro:
assignment to undeclared variable maskBehavior

@BganaRoxa
Copy link

Muuuuito bom!!! Obrigada!!!

@miguelfinger
Copy link

Vlw irmão, eu tava aqui deitado no chão em posição fetal, chorando, usando o jQueryInputMask

@costadouglashc
Copy link

Funcionou com perfeição. Muito obrigado!

@tfpeixoto
Copy link

Boa!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment