2016-11-04 59 views
0

我沒有一個完美的英語,對任何錯誤道歉...的Javascript面膜不工作的移動

我用,我已經源泉一個JS電話/手機屏蔽碼在互聯網上,當我使用我的電腦訪問我的網站時,它工作正常,但是當我使用手機時,代碼停止工作。

這裏的JS代碼:

<script type="text/javascript"> 
    function mascara(o, f) { 
     v_obj = o 
     v_fun = f 
     setTimeout("execmascara()", 1) 
    } 
    function execmascara() { 
     v_obj.value = v_fun(v_obj.value) 
    } 
    function mtel(v) { 
     v = v.replace(/\D/g, ""); 
     v = v.replace(/^(\d{2})(\d)/g, "($1)$2"); 
     v = v.replace(/(\d)(\d{4})$/, "$1-$2"); 
     return v; 
    } 
    function id(el) { 
     return document.getElementById(el); 
    } 
    window.onload = function() { 

     id('<%= telefoneContato.ClientID %>').onkeypress = function() { 
      mascara(this, mtel); 
     } 
    } 
</script> 

這是文本字段:

<asp:TextBox ID="telefoneContato" runat="server" CssClass="form-control" placeholder="Digite seu telefone" MaxLength="14"></asp:TextBox> 

幾點:

  • 我使用的引導+ jQuery;
  • 該頁面是一個網頁表單,它被鏈接到一個MasterPage;
  • 我正在使用ASP.NET;
  • 我對JS沒有多少經驗;
  • 這款手機是一款Moto G4(Android 6.0.1),我使用Chrome瀏覽器訪問網站。

在此先感謝!

回答

0

不幸的是,關鍵事件的行爲在每個瀏覽器上都不相同,尤其是當涉及到移動瀏覽器時,它可能非常煩人。嘗試使用兼容手機的jQuery庫,例如jQuery Mask。你將能夠定義你的面具,如:

$(document).ready(function(){ 
    $('.phone').mask('0000-0000'); 
}); 
+0

它的工作,謝謝你! –

+0

不客氣:) –