Имам прост скрипт, който основно коригира непрозрачността на елементите на неподредените елементи от списъка до 0,1, ако те не съвпадат с избора.
$("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;
});
Как мога да добавя или да променя това, така че тези непрозрачни позиции на 0.1 не могат да се натискат?
Отговори:
2 за отговор № 1Използвай показалеца-събития css собственост.
$("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;
});
Забележка: pointer-events
за HTML елементи се поддържа само в Chrome 2.0+, Firefox 3.6+ и Safari 4.0+, които не се поддържат в IE и Opera.
0 за отговор № 2
Може би просто добавете клас, когато зададете непрозрачност
$(".portfolioThumbs li.all").animate({opacity:0.1}).addClass("addedClass");
и тогава
$(".portfolioThumbs li.addedClass").click(function(e) {
e.preventDefault();
});
или можете просто да предотвратите кликването без добавяне на допълнителен клас (както те имат)
$(".portfolioThumbs li.all").click(function(e) {
e.preventDefault();
});
BTW защо искате да се предотврати кликнете върху ли елементи .. има ли котва етикет, който е вътре тези li, че искате да се предотврати кликнете върху?