現在、Google 広告にスライダーと 2 つの画像があります
input class="gwd-input-13xh" type="range" min="0" max="50" value="25" id="slider" oninput="getInput(this.value, this.max)">
.img_1 {
position: absolute;
width: 180px;
height: 130px;
left: 62px;
top: 1px;
-webkit-filter: blur(5px);
opacity: .8;
}
.img_2 {
position: absolute;
width: 180px;
height: 130px;
left: 62px;
top: 1px;
-webkit-filter: blur(5px);
opacity: .8;
}
このスライダーは、スライダー値 (25 より大きい) の右に移動すると、ぼかしが除去され、不透明度が 1 に設定されます。スライダー値 (25 より小さい) の左に移動すると、その逆が発生します。これが私がこれをしなければならない現在のコードです:
function getInput(value, max) {
var img_1 = document.getElementById("img_1");
var img_2 = document.getElementById("img_2");
var sliderPercentage = (value / max).toFixed(2);
img_1.style.opacity = 1 - sliderPercentage
setBlur(img_1, (10 * sliderPercentage).toFixed(2));
img_2.style.opacity = sliderPercentage;
setBlur(img_2, 10 - (10 * sliderPercentage).toFixed(2));
}
function setBlur(ele, value) {
if (ele.style.hasOwnProperty('filter')) {
ele.setAttribute("style", "-webkit-filter:blur(" + value + "px)")
}
}
このコードは問題なく動作します。しかし、どんな理由があろうとも、それopacity
は変わりません。IDKopacity
内で作業するときにが固定されているためGWD
です。コードの計算が機能することがわかる場合console.log(img_1.style.opacity = 1 - sliderPercentage)
は、不透明度を調整していないだけです。
任意の提案やアイデアをいただければ幸いです。setBlur
関数を実行しないと、関数が機能することにも注意してくださいsetOpacity
。実行しているときは機能しませんsetBlur
。