MediaWiki:Common.js: Unterschied zwischen den Versionen
Aus DG HochN-Wiki
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung Markierung: Zurückgesetzt |
||
| Zeile 21: | Zeile 21: | ||
$(this).attr('href', window.location.href); | $(this).attr('href', window.location.href); | ||
}); | }); | ||
}); | |||
})(jQuery); | |||
/* Speichern der Formulardaten beim Verlassen der Vorschau */ | |||
(function($) { | |||
$(document).ready(function() { | |||
// Speichere Formulardaten, wenn der "Zum Bearbeitungsfeld gehen"-Link geklickt wird | |||
$('.mw-continue-editing a[href="#editform"]').on('click', function(e) { | |||
e.preventDefault(); | |||
var formData = {}; | |||
// Speichere alle Input-Felder (Text, Checkboxen, etc.) | |||
$('form input, form textarea, form select').each(function() { | |||
var $input = $(this); | |||
if ($input.attr('type') === 'checkbox' || $input.attr('type') === 'radio') { | |||
formData[$input.attr('name')] = $input.is(':checked'); | |||
} else { | |||
formData[$input.attr('name')] = $input.val(); | |||
} | |||
}); | |||
// Speichere die Daten im localStorage | |||
localStorage.setItem('formPreviewData', JSON.stringify(formData)); | |||
// Weiterleitung zur Bearbeitungsseite | |||
window.location.href = window.location.href; | |||
}); | |||
}); | |||
})(jQuery); | |||
/* Wiederherstellen der Formulardaten beim Laden der Bearbeitungsseite */ | |||
(function($) { | |||
$(document).ready(function() { | |||
var savedData = localStorage.getItem('formPreviewData'); | |||
if (savedData) { | |||
var formData = JSON.parse(savedData); | |||
// Setze die gespeicherten Werte zurück in die Formularfelder | |||
for (var key in formData) { | |||
var $input = $('[name="' + key + '"]'); | |||
if ($input.attr('type') === 'checkbox' || $input.attr('type') === 'radio') { | |||
$input.prop('checked', formData[key]); | |||
} else { | |||
$input.val(formData[key]); | |||
} | |||
} | |||
// Lösche die gespeicherten Daten, um alte Einträge zu vermeiden | |||
localStorage.removeItem('formPreviewData'); | |||
} | |||
}); | }); | ||
})(jQuery); | })(jQuery); | ||
Version vom 6. November 2025, 10:45 Uhr
/* Das folgende JavaScript wird für alle Benutzer geladen. */
/* Offset für fixed Navigation bei Ankerlinks */
(function($, window) {
var adjustAnchor = function() {
var $anchor = $(':target'),
fixedElementHeight = 100;
if ($anchor.length > 0) {
window.scrollTo(0, $anchor.offset().top - fixedElementHeight);
}
};
$(window).on('hashchange load', function() {
adjustAnchor();
});
})(jQuery, window);
/* Dynamische URL für den "Zum Bearbeitungsfeld gehen"-Link */
(function($) {
$(document).ready(function() {
$('.mw-continue-editing a[href="#editform"]').each(function() {
$(this).attr('href', window.location.href);
});
});
})(jQuery);
/* Speichern der Formulardaten beim Verlassen der Vorschau */
(function($) {
$(document).ready(function() {
// Speichere Formulardaten, wenn der "Zum Bearbeitungsfeld gehen"-Link geklickt wird
$('.mw-continue-editing a[href="#editform"]').on('click', function(e) {
e.preventDefault();
var formData = {};
// Speichere alle Input-Felder (Text, Checkboxen, etc.)
$('form input, form textarea, form select').each(function() {
var $input = $(this);
if ($input.attr('type') === 'checkbox' || $input.attr('type') === 'radio') {
formData[$input.attr('name')] = $input.is(':checked');
} else {
formData[$input.attr('name')] = $input.val();
}
});
// Speichere die Daten im localStorage
localStorage.setItem('formPreviewData', JSON.stringify(formData));
// Weiterleitung zur Bearbeitungsseite
window.location.href = window.location.href;
});
});
})(jQuery);
/* Wiederherstellen der Formulardaten beim Laden der Bearbeitungsseite */
(function($) {
$(document).ready(function() {
var savedData = localStorage.getItem('formPreviewData');
if (savedData) {
var formData = JSON.parse(savedData);
// Setze die gespeicherten Werte zurück in die Formularfelder
for (var key in formData) {
var $input = $('[name="' + key + '"]');
if ($input.attr('type') === 'checkbox' || $input.attr('type') === 'radio') {
$input.prop('checked', formData[key]);
} else {
$input.val(formData[key]);
}
}
// Lösche die gespeicherten Daten, um alte Einträge zu vermeiden
localStorage.removeItem('formPreviewData');
}
});
})(jQuery);