2011-11-22 58 views

回答

0

使用jQuery(JavaScript的一個擴展庫):

<form method="POST" action="#"> 
    <textarea id="mytext" rows=5 cols=30>I LOVE YOU</textarea> 
    <input type="button" name="convert" value="Convert"> 
</form> 

var trans = { 'i' : 1, 'o' : 0, 'e' : '3' }; 

$(document).ready(function() { 
    $('input[name="convert"]').click(function() { 
     var value = $('#mytext').val(); 
     for (x in trans) { 
      var patt=new RegExp(x,'ig'); 
      value = value.replace(patt, trans[x]); 
     } 
     $('#mytext').val(value); 
    }); 
}); 

例子:http://jsfiddle.net/HrsZP/

4

所以,你想一個l33t轉換器。你可以使用字典和replace()。 下面是一個示例:

var str = "I LOVE YOU"; 

var LeetDictionary = { 
    'A': '4', 
    'B': '8', 
    'C': '(', 
    'D': '|)', 
    'E': '3', 
    'F': '|=', 
    'G': '6', 
    'H': '|-|', 
    'I': '!', 
    'J': '_|', 
    'K': 'X', 
    'L': '1', 
    'M': '44', 
    'N': '|\\|', 
    'O': '0', 
    'P': '|*', 
    'Q': '0_', 
    'R': '|2', 
    'S': '5', 
    'T': '7', 
    'U': '|_|', 
    'V': '\\/', 
    'W': '\\/\\/', 
    'X': '%', 
    'Y': 'j', 
    'Z': '2' 
}; 

for (var l in LeetDictionary) 
{ 
    str = str.toUpperCase().replace(l, LeetDictionary[l]).toLowerCase(); 
} 

alert(str); 
+1

+1 LOL OMG一樣:) – Jules