mirror of
https://github.com/Doodle3D/doodle3d-connect.git
synced 2024-12-24 17:43:48 +01:00
Better show password method
This commit is contained in:
parent
7b929a1506
commit
24c0a31268
@ -25,7 +25,7 @@
|
||||
_title = _page.find("h3");
|
||||
_form = _page.find("form");
|
||||
_passwordField = _form.find("input[name=password]");
|
||||
_passwordField.showPassword();
|
||||
_passwordField.psswrd();
|
||||
_passwordCloneField = _form.find("input[name=password-clone]");
|
||||
_submitButton = _form.find("input[type=submit]");
|
||||
|
||||
|
17
js/libs/jquery.psswrd.js
Executable file
17
js/libs/jquery.psswrd.js
Executable file
@ -0,0 +1,17 @@
|
||||
(function($){
|
||||
$.fn.extend({
|
||||
psswrd: function() {
|
||||
return $(this).each(function(){
|
||||
console.log(" each: ",$(this));
|
||||
var $input = $(this);
|
||||
var $checkbox = $($input.data('typetoggle'));
|
||||
|
||||
$checkbox.change(updateType);
|
||||
updateType();
|
||||
function updateType() {
|
||||
$input[0].type = $checkbox.is(':checked') ? 'text' : 'password';
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
})(jQuery);
|
@ -1,118 +0,0 @@
|
||||
/*
|
||||
* @name Show Password
|
||||
* @descripton
|
||||
* @version 1.3
|
||||
* @requires Jquery 1.5
|
||||
*
|
||||
* @author Jan Jarfalk
|
||||
* @author-email jan.jarfalk@unwrongest.com
|
||||
* @author-website http://www.unwrongest.com
|
||||
*
|
||||
* @special-thanks Michel Gratton
|
||||
*
|
||||
* @licens MIT License - http://www.opensource.org/licenses/mit-license.php
|
||||
*/
|
||||
(function($){
|
||||
$.fn.extend({
|
||||
showPassword: function(c) {
|
||||
|
||||
// Setup callback object
|
||||
var callback = {'fn':null,'args':{}}
|
||||
callback.fn = c;
|
||||
|
||||
// Clones passwords and turn the clones into text inputs
|
||||
var cloneElement = function( element ) {
|
||||
|
||||
var $element = $(element);
|
||||
|
||||
$clone = $("<input />");
|
||||
|
||||
// Name added for JQuery Validation compatibility
|
||||
// Element name is required to avoid script warning.
|
||||
$clone.attr({
|
||||
'type' : 'text',
|
||||
'class' : $element.attr('class'),
|
||||
'style' : $element.attr('style'),
|
||||
'size' : $element.attr('size'),
|
||||
'name' : $element.attr('name')+'-clone',
|
||||
'tabindex' : $element.attr('tabindex')
|
||||
});
|
||||
|
||||
return $clone;
|
||||
|
||||
};
|
||||
|
||||
// Transfers values between two elements
|
||||
var update = function(a,b){
|
||||
b.val(a.val());
|
||||
};
|
||||
|
||||
// Shows a or b depending on checkbox
|
||||
var setState = function( checkbox, a, b ){
|
||||
|
||||
if(checkbox.is(':checked')){
|
||||
update(a,b);
|
||||
b.show();
|
||||
a.hide();
|
||||
} else {
|
||||
update(b,a);
|
||||
b.hide();
|
||||
a.show();
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
return this.each(function() {
|
||||
|
||||
var $input = $(this),
|
||||
$checkbox = $($input.data('typetoggle'));
|
||||
|
||||
// Create clone
|
||||
var $clone = cloneElement($input);
|
||||
$clone.insertAfter($input);
|
||||
|
||||
// Set callback arguments
|
||||
if(callback.fn){
|
||||
callback.args.input = $input;
|
||||
callback.args.checkbox = $checkbox;
|
||||
callback.args.clone = $clone;
|
||||
}
|
||||
|
||||
|
||||
|
||||
$checkbox.bind('click', function() {
|
||||
setState( $checkbox, $input, $clone );
|
||||
});
|
||||
|
||||
$input.bind('keyup', function() {
|
||||
update( $input, $clone )
|
||||
});
|
||||
|
||||
$clone.bind('keyup', function(){
|
||||
update( $clone, $input );
|
||||
|
||||
// Added for JQuery Validation compatibility
|
||||
// This will trigger validation if it's ON for keyup event
|
||||
$input.trigger('keyup');
|
||||
|
||||
});
|
||||
|
||||
// https://code.google.com/p/showpassword/issues/detail?id=1&thanks=1&ts=1399477719
|
||||
$clone.bind('change', function() {
|
||||
update( $clone , $input)
|
||||
});
|
||||
|
||||
// Added for JQuery Validation compatibility
|
||||
// This will trigger validation if it's ON for blur event
|
||||
$clone.bind('blur', function() { $input.trigger('focusout'); });
|
||||
|
||||
setState( $checkbox, $input, $clone );
|
||||
|
||||
if( callback.fn ){
|
||||
callback.fn( callback.args );
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
});
|
||||
})(jQuery);
|
Loading…
Reference in New Issue
Block a user