2017-09-06 20 views
1

入力フィールドにマウスを置いたときにパスワードを表示しようとしています.1秒後にパスワードに戻ります。jQueryの入力をテキストに変更し、パスワードに戻す

これは私が持っているものです。

if (this.type === 'password') { 
    this.type = "text"; 
    setTimeout(function() { 
    this.type = "password"; 
    }, 100) 
} 

それはテキストにパスワードを変更し、それをバックに変更しません。 私はすべてのテキストフィールドをパスワードに変更するコードを停止するために、このようにしています。

どうすればいいですか?

おかげ

+4

あなたのタイムアウトの中の 'this'はあなたの考えではありません。 –

+0

ありがとうございました - 私はそれを実現していません – Tom

答えて

1

if (this.type === 'password') { 
    this.type = "text"; 
    var that = this; 
    setTimeout(function() { 
    that.type = "password"; 
    }, 1000) 
} 

にコードを変更し

変数& setTimeout内で使用にthis参照を持ちます。

希望すると、これが役立ちます。

+0

私は行方不明とそれが動作する説明していただきありがとうございます。 – Tom

関連する問題