2013-02-13 9 views

Odpowiedz

9

należy ustawić wartość nieruchomości webkitFilter, nie do obiektu style . Ta składnia will work:

image.style.webkitFilter = "brightness(50%)"; 

Jeśli nie znasz JavaScript nazwę właściwości, można odwoływać się do niej przez własności CSS (jak karaxuna zasugerował, will work too):

image.style["-webkit-filter"] = "brightness(50%)"; 
+0

jakikolwiek pomysł, jak połączyć dwa filtry? powiedz 'brightness' i' invert'? –

+1

@MaciejJankowski oddziela je po prostu spacją, '" jasność (50%) invert() "': http://jsfiddle.net/bj4p0sxm/ – Pavlo

+0

dzięki! ty jesteś szefem! –

2

Dodaj ten filtr do klasy:

.bright { 
    -webkit-filter: brightness(50%); 
} 

i przełączniki tej klasy:

image.classList.toggle('bright'); 
+0

@PavloMykhalov: Cóż, nie są 'właściwości -webkit' . – Blender

3
image.style["-webkit-filter"] = "brightness(50%)"; 
0

1) Sprawdź, czy przeglądarka obsługuje css -filters (jeśli to konieczne)
2) Wykrywanie jeśli „filtr” własność musi dostawcą w bieżącej przeglądarki i zapisać go
3) została ustawiona wartość filtra w formacie:

el.style["-vendor-filter"] = value; 

lub

el.style.vendorFilter = value; 

Sprawdź małe demo dla niego: http://codepen.io/malyw/pen/EDnmt
Ponadto można znaleźć dużą demo pokazuje filtry css w akcji: http://malyw.github.io/css-filters/

Powiązane problemy