所以我目前正在尝试获取密码类型的文本区域(实际上就像一个输入)。
我尝试创建自己的字体(只有黑点),但这有点难......
我尝试了一些 Jquery,但这也不是很确定。
谢谢你的帮助。
这篇文章: 如何使 Textarea 像密码字段一样工作
提到使用 keydown 事件将框中的内容替换为您想要的任何内容。当然,您需要同时将输入的文本存储在某个 javascript 变量中。
您可以改用 CSS 来模糊文本。
style="color: transparent;text-shadow: 0 0 8px rgba(0,0,0,0.5);"
我希望你能从中得到想法
<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;
}