Der unten stehende Code ist für ein einfaches Newsletter-Anmelde-Widget.
Ich bin mir sicher, dass es eine Möglichkeit gibt, das Ganze prägnanter zu gestalten, haben Sie eine Idee?
var email_form = $('.widget_subscribe form');
var email_submit = $('.widget_subscribe .submit');
var email_link = $('.widget_subscribe .email');
// Hide the email entry form when the page loads
email_form.hide();
// Show the form when the email link is clicked
$(email_link).click( function () {
$(this).toggle();
$(email_form).toggle();
return false;
});
// Hide the form when the form submit is clicked
$(email_submit).click( function () {
$(email_link).toggle();
$(email_form).toggle();
});
// Clear/reset the email input on focus
$('input[name="email"]').focus( function () {
$(this).val("");
}).blur( function () {
if ($(this).val() == "") {
$(this).val($(this)[0].defaultValue);
}
});
0 Stimmen
Sieht ziemlich gut aus. Sie vermissen nur ); nach der letzten Unschärfefunktion.
0 Stimmen
Sieht für mich ganz gut aus. Sie müssen nicht $() die Variablen wie $(email_form), weil das getan wurde, wenn instatiating sie.
0 Stimmen
Nebenbei bemerkt... wenn ich einen Tippfehler in meiner E-Mail-Adresse mache und versuche, ihn zu korrigieren, löscht Ihr Code vollständig, was ich zuvor eingegeben hatte, und zwingt mich, von vorne zu beginnen. (Das passiert sehr oft auf Websites und ist ätzend.)
0 Stimmen
Können Sie die zweite und dritte var-Anweisung weglassen und nur ',' am Ende verwenden.