有一种已知的方法来使用密码类型的textarea吗?

时间:2013-04-17 10:46:56

标签: jquery html dom fonts

所以我目前正在尝试使用密码类型获得textarea(实际上就像输入一样)。

我尝试创建自己的字体(只有黑点),但有点难......

我尝试了一些Jquery,但这也不是一个结论。

感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

这篇文章: How to make a Textarea act like a password field

提到使用keydown事件用你想要的东西替换盒子里的东西。当然,您需要同时将输入的文本存储在某个javascript变量中。

答案 1 :(得分:2)

我希望你能从

获得想法

http://jsfiddle.net/X37Wz/6/

<textarea rows="10" cols="30" id="field"  onKeyPress="handleTyping(event)">
</textarea>

<textarea rows="10" cols="30" id="hiddenfield"  style="display:none">
</textarea>


function handleTyping(e){
    setTimeout(function(){handleTypingDelayed(e)},500);
}

function handleTypingDelayed(e){

    var text = document.getElementById('hiddenfield').value;
    var stars = document.getElementById('hiddenfield').value.length;
    unicode = eval(unicode);
    var unicode=e.keyCode? e.keyCode : e.charCode;

    if ( (unicode >=65 && unicode <=90) 
            || (unicode >=97 && unicode <=122) 
                || (unicode >=48 && unicode <=57) ){
        text = text+String.fromCharCode(unicode);    
        stars += 1;
    }else{
        stars -= 1;
    }

    document.getElementById('hiddenfield').value = text;
    document.getElementById('field').value = generateStars(stars);
}

function generateStars(n){
    var stars = '';
    for (var i=0; i<n;i++){
        stars += '.';
    }
    return stars;
}

答案 2 :(得分:0)

您可以改用 CSS 来模糊文本。

style="color: transparent;text-shadow: 0 0 8px rgba(0,0,0,0.5);"