/ / JQuery-Deckkraftfilter - Jquery, Deckkraft

JQuery-Deckkraftfilter - Jquery, Deckkraft

Ich habe ein einfaches Skript, das grundsätzlich die Deckkraftelemente ungeordneter Listenelemente auf 0,1 anpasst, wenn sie nicht mit der Auswahl übereinstimmen.

$("ul.filter li a").click(function() {
var getvalue = $(this).attr("rel");
$(".portfolioThumbs li.all").animate({opacity:0.1});
$(".portfolioThumbs li."+getvalue).animate({opacity:1});
return false;
});

Wie kann ich dies hinzufügen oder ändern, damit Sie die Deckkraftelemente bei 0,1 nicht anklicken können?

Antworten:

2 für die Antwort № 1

Benutze die Zeigerereignisse CSS-Eigenschaft.

$("ul.filter li a").click(function() {
var getvalue = $(this).attr("rel");
$(".portfolioThumbs li.all").animate({opacity:0.1}).css("pointer-events", "none");
$(".portfolioThumbs li."+getvalue).animate({opacity:1}).css("pointer-events", "auto");;
return false;
});

Hinweis: pointer-events für HTML-Elemente wird nur in Chrome 2.0+, Firefox 3.6+ und Safari 4.0+ unterstützt, in IE und Opera nicht.


0 für die Antwort № 2

Vielleicht fügen Sie einfach eine Klasse hinzu, wenn Sie die Deckkraft einstellen

$(".portfolioThumbs li.all").animate({opacity:0.1}).addClass("addedClass");

und dann

$(".portfolioThumbs li.addedClass").click(function(e) {
e.preventDefault();
});

oder Sie können das Klicken einfach verhindern, ohne zusätzliche Klassen hinzuzufügen (da diese über eine verfügen).

$(".portfolioThumbs li.all").click(function(e) {
e.preventDefault();
});

Übrigens, warum möchten Sie verhindern, dass auf die li-Elemente geklickt wird. Befindet sich in diesen li ein Ankertag, dessen Klick Sie verhindern möchten?