动态更改Webkit过滤器值

时间:2012-09-06 09:48:07

标签: javascript html5 css3

我一直在努力改变

的价值
-webkit-filter: grayscale(30%);

使用HTML5范围输入和javascript动态值。

如何使用javascript访问css webkit过滤器属性?

3 个答案:

答案 0 :(得分:3)

<强>使用Javascript:

function changegrayscale(value) {
    document.getElementById("divID").setAttribute("style","-webkit-filter:grayscale(" + value + "%)")
}​

<强> HTML:

<div id="divID" onclick="changegrayscale('30')">Clcik Me</div>​​

<强> CSS:

#divID {
    -webkit-filter: grayscale(70%);
    background: red;
    width: 100px;
    height: 100px;
}

DEMO

答案 1 :(得分:1)

试试这个 - DEMO

<input type="range" min="0" max="100" step="10" id="inp" />

<img src="http://lorempixel.com/300/200" id="img" />
<img src="http://lorempixel.com/300/200" />​

<script>
document.getElementById("inp").addEventListener("change", function() {
    document.getElementById("img").setAttribute("style", "-webkit-filter:grayscale(" + this.value + "%)");
}, false);​
</script>

答案 2 :(得分:0)

使用jQuery,你可以在'.elements'上这样做:

function changegrayscale(value) {
  $('.elements').css({
    '-webkit-filter': 'grayscale('+value+'%)'
  });
}