我必須使用包含0%-100%百分比的下拉菜單來更改圖像的不透明度,因爲本週我纔開始使用JavaScript(並且非常適合應該使用addEventListeners)我真的不知道從哪裏開始。通過下拉菜單更改圖像的不透明度
1
A
回答
0
像這樣的東西應該可以工作,如果你可以使用jQuery。
$(document).on('change', '#task3control') {
var percent = $(this).find('option:selected').text().replace('%', '');
var decimal = parseFloat(percent)/100;
$('#tardis').css('opacity', decimal);
});
+1
@Jeremy沒有使用jQuery – hunter
0
<select name="task3control" id="task3control" onchange="opacity();">
....
</select>
,如果你的價值添加到每個option
這是可以做到這樣的:
function opacity()
{
var task3control = document.getElementById("task3control");
setOpacity(
document.getElementById("tardis"),
task3control.options[task3control.selectedIndex].value
);
}
function setOpacity(tardis, value)
{
tardis.style.opacity = "." + value;
tardis.style.filter = "alpha(opacity=" + value + ")";
}
0
首先你的選擇需要例如像這樣的值
<select name="task3control" id="task3control">
<option>Select One</option>
<option value="0.0">0%</option>
<option value="0.1">10%</option>
<option value="0.2">20%</option>
<option value="0.3">30%</option>
<option value="0.4">40%</option>
<option value="0.5">50%</option>
<option value="0.6">60%</option>
<option value="0.7">70%</option>
<option value="0.8">80%</option>
<option value="0.9">90%</option>
<option value="1.0">100%</option>
</select>
然後,只需使用此
$(document).ready(function() {
var image = jQuery('img#tardis')
jQuery('#task3control').on('change', function(event) {
var opacityValue = parseFloat(jQuery(this).val());
image.fadeTo('fast', opacityValue);
});
});
我加fadeTo()用於fancyness :)
0
可以使用jQuery的.fadeTo()方法,也可以給它改你更新圖像的不透明度時的動作。
的jQuery:
$("#task3control").change(function(){
var opacityValue = ($(this).val().replace("%", ""))/100;
$("#tardis").fadeTo("slow", opacityValue);
});
爲了使混濁立即改變只需更換.fadeTo( 「慢」,opacityValue)與.fadeTo( 「快」,opacityValue)。
它也可以使用javaScript完成。只需使用selectedIndex屬性獲取所選選項的索引並使用該索引獲取所選選項的值。然後使用該值更改圖像的值。
JavaScript的:
task3control.onchange = function UpdateOpacity(){
var element = document.getElementById("task3control");
var opacityValue = (element.options[element.selectedIndex].value.replace("%", ""))/100;
var myImage = document.getElementById("tardis");
myImage.style.opacity = opacityValue;
};
相關問題
- 1. 應用CSS不透明度改爲下拉菜單
- 2. Rails - 下拉菜單圖標上的不透明度切換?
- 3. HTML下拉菜單透明
- 4. 無法通過使用Imagick更改圖像不透明度
- 5. 通過更改不透明度來突出顯示圖像
- 6. 通過php下拉菜單更改圖像
- 7. 純CSS下拉菜單通過不透明鏈接
- 8. jQuery通過AJAX更改下拉菜單
- 9. 使用下拉菜單更改圖像
- 10. 下拉菜單透明不起作用
- 11. 下拉菜單中的IE7不透明度問題
- 12. 通過圖像的透明度
- 13. jQuery的透明下拉菜單
- 14. 使用SeekBar更改圖像透明度
- 15. Android ActionBar(Sherlock) - 更改菜單圖標的顏色/透明度
- 16. 透明引導下拉菜單
- 17. 自舉下拉菜單透明按鈕
- 18. JavaScript,Highcharts - 通過下拉菜單更改圖表數據?
- 19. 如何更改Android圖庫中圖像的不透明度
- 20. 當菜單項處於活動狀態時,如何更改菜單圖像的不透明度
- 21. 更改圖片不透明度
- 22. 使用不透明度更改圖片
- 23. 在頁面寬度上更改背景圖像不透明度
- 24. 更改下拉菜單
- 25. Matplotlib - 更改用作背景的圖像的不透明度
- 26. 更改NSTextAttachment的圖像上的不透明度
- 27. Div 70%不透明度,含有100%不透明度的圖像
- 28. 更改背景不透明度而不更改內容不透明度
- 29. 更改PHP中圖像的不透明度
- 30. 懸停的css圖像鏈接更改不透明度
是的,你可能要聽使用'addEventListener'了'change'事件。有關此方法的更多信息:https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener –