java 脚本滑块触发器上显示的图像不正确
Incorrect image being shown on java script slider bar trigger
滑块根据组合的值显示不同的徽章。我有两个问题。
1 - 有一个"var img = 'snackapp.png;"行,它目前显示为一个值,我不明白它在代码中执行什么目的。需要吗?它链接到的徽章显示在代码中,我不希望它显示。
2 此外,在第二次移动滑块后,徽章并不总是更新。我该如何解决此问题?
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Do I need a treat>!?</title>
<link rel="stylesheet" href="css/jquery-ui.css" type="text/css" media="screen">
<link rel="stylesheet" href="css/grid.css" type="text/css" media="screen">
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen">
<script src="js/jquery-1.10.2.min.js"></script>
<script src="js/jquery-ui.js"></script>
</head>
<body>
<p>
<label for="amount">Volume:</label>
<img id="amount-img" src="img/snackapp.png"/>
</p>
<style>
.slider { height: 200px; float:left; margin-right:20px; }
</style>
<div class="slider"></div>
<div class="slider"></div>
<div class="slider"></div>
<div class="slider"></div>
<div class="slider"></div>
<script>
$(function() {
$( ".slider" ).slider({
orientation: "vertical",
range: "min",
min: 0,
max: 100,
value: 0,
slide: function( event, ui ) {
var total = 0;
$('.slider').each( function() {
total += $(this).slider('value');
});
var img = 'snackapp.png';
if( total>=499) img = 'booze.png';
else if( total>=400 ) img = 'fishandchips.png';
else if( total>=300 ) img = 'pizza.png';
else if( total>=200 ) img = 'doughnut.png';
else if( total>=100 ) img = 'choc.png';
else if( total>=99 ) img = 'icecream.png';
else if( total<=98 ) img = 'fruit.png';
else if( total<=97 ) img = 'hotdrink.png';
;
$('#amount-img').attr( 'src', 'img/'+img );
}
});
});
</script>
</body>
</html>
var img = 'snackapp.png';
似乎是默认图像,声明它的原因是等同于该if语句的else子句。如果 if 语句的所有条件都不满足,则img
保持snackapp.png
。
每次移动滑块时,我对"徽章"更新都没有问题。您意识到滑块必须移动到某个脱粒上才能使图像正确更改?图像正在根据连接在一起的所有滑块的总值而变化。
如果不希望显示snackapp.png
,请使用自己的默认图像将其更改,或将代码修改为
.HTML
<p>
<label for="amount">Volume:</label>
<img id="amount-img" src="img/hotdrink.png" />
</p>
<div class="slider"></div>
<div class="slider"></div>
<div class="slider"></div>
<div class="slider"></div>
<div class="slider"></div>
.JS
$(function () {
$(".slider").slider({
orientation: "vertical",
range: "min",
min: 0,
max: 100,
value: 0,
slide: function (event, ui) {
var total = 0;
$('.slider').each(function () {
total += $(this).slider('value');
});
var img = 'snackapp.png';
if (total >= 499) img = 'booze.png';
else if (total >= 400) img = 'fishandchips.png';
else if (total >= 300) img = 'pizza.png';
else if (total >= 200) img = 'doughnut.png';
else if (total >= 100) img = 'choc.png';
else if (total >= 99) img = 'icecream.png';
else if (total >= 50) img = 'fruit.png';
else if (total < 50) img = 'hotdrink.png';
$('#amount-img').attr('src', 'img/' + img);
}
});
});
这将使热饮成为默认图像。
相关文章:
- 使用JSP从服务器检索和显示图像
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 使用FormData上传AJAX图像;t在服务器端显示图像
- 选择文件后显示图像
- Chrome(webkit?)无法在幻灯片中正确显示图像
- 如何使用javascript显示图像
- 使用JS按顺序显示图像,而不是随机显示
- 使用服务器上的HTML/js在网页上显示图像
- 我想在选择输入文件上显示图像
- Javascript:单击单选按钮时显示图像
- 如何将JSON结果设置为'src'共'img'以在ASP.NET MVC4中显示图像
- 无法在cakepp布局中显示图像
- 页面加载后通过javascript显示图像
- 将图像文件存储在猫鼬模式中的二进制数据中,并以html形式显示图像
- 使用AngularJs数据绑定的三元运算符显示图像
- 加载时画布上未显示图像
- 运行POST时显示图像
- NodeJS上没有显示图像
- 从Javascript在表中显示图像
- 如何在MVC5中运行时在HTML5 Canvas中显示图像