我有一个密码字段和右边的小图标,我想在用户点击图标时显示输入的密码2秒。 我所做的是。
$("#showpass").click(function(){
$('#pass').attr('type','text').delay(2000).attr('type','password');
);
它什么也没做,但是当我只做$('#pass').attr('type','text')
时它没有任何问题。
答案 0 :(得分:1)
.delay()方法最适合在排队的jQuery之间延迟 效果。因为它是有限的 - 例如,它没有提供一种方法 取消延迟-.delay()不是JavaScript本机的替代品 setTimeout函数,可能更适合某些用途 例。
更好地将其用于动画问题:
改为使用setTimeout。
答案 1 :(得分:1)
延迟仅适用于使用jQuery队列的函数(如动画),因此在将类型设置为文本和键入密码之间没有任何延迟。
您的特定问题可以通过setTimeout()
解决。
$("#showpass").click(function(){
var pass = $('#pass').attr('type','text');
setTimeout(function() {
pass.attr('type','password');
}, 2000);
);