0
Mein erster Ausflug ins Schreiben von jQuery-Funktionen.Jquery Bereich Frage
Ich habe diese Funktion, aber ich bin mir nicht sicher, warum die Überlagerung var außerhalb des Bereichs der Klickfunktion sein muss. Ich habe es versucht, aber es funktioniert nicht richtig. Kann ich das umgestalten, um es besser zu machen?
(function($) {
$.fn.popOver = function() {
// Variable for overlay
var overlay = $("<div id='overlay'></div>");
// Listen for clicks
return this.click(function(e) {
// Prevent the anchor link from loading
e.preventDefault();
// Variable for popover
var popover = $(this).next();
// Append the overlay to the document body
$('body').append(overlay.click(function() {
overlayHide();
}))
//Set the css and fade in our overlay
overlay.show();
popover.fadeIn(150);
// Listen for clicks on elements
popover.find('a').click(function() {
overlayHide();
})
// Hide Overlay function
function overlayHide() {
overlay.remove();
popover.fadeOut(150);
}
})
}
}) (jQuery);
Bessere Mittel kürzer? Haben Sie Probleme mit diesem Code? –
Es wäre schön, wenn Sie Ihre inneren Funktionen für bessere Lesbarkeit einrücken könnten. – deceze
@deceze Richtig, die fehlende Einrückung hat mich dazu gebracht, den '' 'klick()' Handler zu verpassen :( – alex