Maison  >  Article  >  interface Web  >  jQuery, html5 et css3 implémentent la fonction de formulaire de non-actualisation aux coins arrondis avec validation des entrées

jQuery, html5 et css3 implémentent la fonction de formulaire de non-actualisation aux coins arrondis avec validation des entrées

不言
不言original
2018-06-25 16:31:411224parcourir

Cet article présente principalement jQuery+html5+css3 pour implémenter le formulaire de non-actualisation aux coins arrondis avec le code de fonction de vérification d'entrée. Les technologies HTML5 et css3 sont ajoutées pour rendre l'effet de formulaire entier plus beau et plus magnifique. Les amis qui en ont besoin peuvent s'y référer. à cela

L'exemple de cet article décrit le code de jQuery+html5+css3 pour implémenter un formulaire de non-actualisation aux coins arrondis avec fonction de vérification des entrées. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :

Voici une forme arrondie, une zone de saisie arrondie, aucune vérification de rafraîchissement, belle et belle. Ceci est un bref résumé de l'effet de formulaire basé sur HTML5/CSS3/jQuery, qui peut être. réalisé avec HTML5 Il y a de nombreux effets extraordinaires. A partir de maintenant, vous tomberez amoureux de HTML5 et vous gronderez le maléfique IE. Jusqu'à présent, IE8 ne prend pas en charge HTML5, ce qui est triste.

Jetons d'abord un coup d'œil à la capture d'écran de l'effet en cours d'exécution :

Le code spécifique est le suivant :

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>html5+css3+jQuery圆角注册表单效果</title>
<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<script type="text/javascript">
 $(document).ready(function() {
(function($) { $.InFieldLabels = function(label, field, options) { var base = this; base.$label = $(label); base.$field = $(field); base.$label.data("InFieldLabels", base); base.showing = true; base.init = function() { base.options = $.extend({}, $.InFieldLabels.defaultOptions, options); base.$label.css(&#39;position&#39;, &#39;absolute&#39;); var fieldPosition = base.$field.position(); base.$label.css({ &#39;left&#39;: fieldPosition.left, &#39;top&#39;: fieldPosition.top }).addClass(base.options.labelClass); if (base.$field.val() != "") { base.$label.hide(); base.showing = false; }; base.$field.focus(function() { base.fadeOnFocus(); }).blur(function() { base.checkForEmpty(true); }).bind(&#39;keydown.infieldlabel&#39;, function(e) { base.hideOnChange(e); }).change(function(e) { base.checkForEmpty(); }).bind(&#39;onPropertyChange&#39;, function() { base.checkForEmpty(); }); }; base.fadeOnFocus = function() { if (base.showing) { base.setOpacity(base.options.fadeOpacity); }; }; base.setOpacity = function(opacity) { base.$label.stop().animate({ opacity: opacity }, base.options.fadeDuration); base.showing = (opacity > 0.0); }; base.checkForEmpty = function(blur) { if (base.$field.val() == "") { base.prepForShow(); base.setOpacity(blur ? 1.0 : base.options.fadeOpacity); } else { base.setOpacity(0.0); }; }; base.prepForShow = function(e) { if (!base.showing) { base.$label.css({ opacity: 0.0 }).show(); base.$field.bind(&#39;keydown.infieldlabel&#39;, function(e) { base.hideOnChange(e); }); }; }; base.hideOnChange = function(e) { if ((e.keyCode == 16) || (e.keyCode == 9)) return; if (base.showing) { base.$label.hide(); base.showing = false; }; base.$field.unbind(&#39;keydown.infieldlabel&#39;); }; base.init(); }; $.InFieldLabels.defaultOptions = { fadeOpacity: 0.5, fadeDuration: 300, labelClass: &#39;infield&#39; }; $.fn.inFieldLabels = function(options) { return this.each(function() { var for_attr = $(this).attr(&#39;for&#39;); if (!for_attr) return; var $field = $("input#" + for_attr + "[type=&#39;text&#39;]," + "input#" + for_attr + "[type=&#39;password&#39;]," + "input#" + for_attr + "[type=&#39;tel&#39;]," + "input#" + for_attr + "[type=&#39;email&#39;]," + "textarea#" + for_attr); if ($field.length == 0) return; (new $.InFieldLabels(this, $field[0], options)); }); }; })(jQuery);
$("#RegisterUserForm label").inFieldLabels();
});
</script>
<style type="text/css">
html, body, h1, form, fieldset, input{margin: 0;padding: 0;border: none;}
body{font-family: Helvetica, Arial, sans-serif;font-size: 12px;}
#registration{color: #fff;background: #2d2d2d;background: -webkit-gradient( linear, left bottom, left top, color-stop(0, rgb(60,60,60)), color-stop(0.74, rgb(43,43,43)), color-stop(1, rgb(60,60,60)) );background: -moz-linear-gradient( center bottom, rgb(60,60,60) 0%, rgb(43,43,43) 74%, rgb(60,60,60) 100% );-moz-border-radius: 10px;-webkit-border-radius: 10px;border-radius: 10px;margin: 10px;width: 430px;}
#registration a{color: #8c910b;text-shadow: 0px -1px 0px #000;}
#registration fieldset{padding: 20px;}
input.text{-webkit-border-radius: 15px;-moz-border-radius: 15px;border-radius: 15px;border: solid 1px #444;font-size: 14px;width: 90%;padding: 7px 8px 7px 30px;-moz-box-shadow: 0px 1px 0px #777;-webkit-box-shadow: 0px 1px 0px #777;background: #ddd url(&#39;img/inputSprite.png&#39;) no-repeat 4px 5px;background: url(&#39;images/inputSprite.png&#39;) no-repeat 4px 5px, -moz-linear-gradient( center bottom, rgb(225,225,225) 0%, rgb(215,215,215) 54%, rgb(173,173,173) 100% );background: url(&#39;images/inputSprite.png&#39;) no-repeat 4px 5px, -webkit-gradient( linear, left bottom, left top, color-stop(0, rgb(225,225,225)), color-stop(0.54, rgb(215,215,215)), color-stop(1, rgb(173,173,173)) );color: #333;text-shadow: 0px 1px 0px #FFF;}
input#email{background-position: 4px 5px;background-position: 4px 5px, 0px 0px;}
input#password{background-position: 4px -20px;background-position: 4px -20px, 0px 0px;}
input#name{background-position: 4px -46px;background-position: 4px -46px, 0px 0px;}
input#tel{background-position: 4px -76px;background-position: 4px -76px, 0px 0px;}
#registration h2{color: #fff;text-shadow: 0px -1px 0px #000;border-bottom: solid #181818 1px;-moz-box-shadow: 0px 1px 0px #3a3a3a;text-align: center;padding: 18px;margin: 0px;font-weight: normal;font-size: 24px;font-family: Lucida Grande, Helvetica, Arial, sans-serif;}
#registerNew{width: 203px;height: 40px;border: none;text-indent: -9999px;background: url(&#39;images/createAccountButton.png&#39;) no-repeat;cursor: pointer;float: right;}
#registerNew: hover{background-position: 0px -41px;}
#registerNew: active{background-position: 0px -82px;}
#registration p{position: relative;}
fieldset label.infield{color: #333;text-shadow: 0px 1px 0px #fff;position: absolute;text-align: left;top: 3px !important;left: 35px !important;line-height: 29px;}
</style>
</head>
<body>
<p id="registration">
 <h2>Create an Account</h2>
 <form id="RegisterUserForm" action="" method="post">
 <fieldset>
  <p>
  <label for="name">Name</label>
  <input id="name" name="name" type="text" class="text" value="" />
  </p>
  <p>
  <label for="tel">Phone Number</label>
  <input id="tel" name="tel" type="tel" class="text" value="" />
  </p>
  <p>
  <label for="email">Email</label>
  <input id="email" name="email" type="email" class="text" value="" />
  </p>
  <p>
  <label for="password">Password</label>
  <input id="password" name="password" class="text" type="password" />
  </p>
  <p><input id="acceptTerms" name="acceptTerms" type="checkbox" />
  <label for="acceptTerms">
  I agree to the <a href="">Terms and Conditions</a> and <a href="">Privacy Policy</a>
  </label>
  </p>
  <p>
  <button id="registerNew" type="submit">Register</button>
  </p>
 </fieldset>
 </form>
</p>
</body>
</html>

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au chinois PHP. site web!

Recommandations associées :

Code de canevas JavaScript et html5 pour savoir comment dessiner une petite personne

jQuery comment implémenter un bouton coulissant Le commutateur

Comment utiliser JS et CSS3 pour créer des effets pop-up sympas

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn