JQueryMobile滑块更改事件 - 显示图像

时间:2011-08-12 12:39:54

标签: jquery-mobile slider

我有一个功能here的滑块。

我想要做的是当滑块进入10-20,21-40,41-60,61-80,81-100之间时我希望图像被另一个替换,你可以看到我的默认图像想要被替换......

因此,例如,如果滑块位于21-40之间,则图像源应更改为

<img src="images/slide_2.jpg" width="459" height="315">

依旧......怎么做?

2 个答案:

答案 0 :(得分:3)

直播示例:

JS:

$("#slider").change(function() {
    sVal = $(this).val();

    if(sVal > 21 && sVal <= 40) {
        $('#theImage').attr('src', 'http://jquerymobile.com/demos/1.0b2/docs/toolbars/glyphish-icons/21-skull.png');
    }

    if(sVal > 41 && sVal <= 60) {
        $('#theImage').attr('src', 'http://jquerymobile.com/demos/1.0b2/docs/toolbars/glyphish-icons/18-envelope.png');
    }

    if(sVal > 61 && sVal <= 80) {
        $('#theImage').attr('src', 'http://jquerymobile.com/demos/1.0b2/docs/toolbars/glyphish-icons/100-coffee.png');
    }

    if(sVal > 81 && sVal <= 100) {
        $('#theImage').attr('src', 'http://jquerymobile.com/demos/1.0b2/docs/toolbars/glyphish-icons/88-beermug.png');
    }

});

HTML:

<div data-role="page" id="slider-test" data-theme="a"> 
    <div data-role="content">
        <div data-role="fieldcontain">
            <label for="slider">Input slider: 
                <img id="theImage" src="http://jquerymobile.com/demos/1.0b2/docs/toolbars/glyphish-icons/09-chat2.png" alt="slider images" />
            </label>
            <input type="range" name="slider" id="slider" value="0" min="0" max="100"  />
        </div>

    </div>
</div>

答案 1 :(得分:0)

很简单,如果你将类型属性添加到滑块标签(如type="slider"),它将成为一个html5滑块对象,并且会有一个更改事件,您可以在其中检查其当前值。所以你的代码会喜欢这样的东西:

    $(document).ready(function () {
        $("#slider").change(function () {
            if (slider.value > 20 && slider.value < 41)
                $("#imgMap").attr("src", "images/slide_2.jpg");
        });
    });

如果你给你的图片id =“imgMap”

<img id="imgMap" src="images/slide_1.jpg" width="459" height="315">
<input type="slider" name="slider" id="slider" value="47" min="0" max="100" 
    data-type="range">