点击后更改div样式

时间:2013-11-21 10:31:22

标签: jquery styles background-position

我有一个div <div style="background-position: 50% 0"></div>

我想要的是每次点击它时增加background-position 50%,即<div style="background-position: 100% 0"></div>,然后是<div style="background-position: 150% 0"></div>,依此类推。有没有办法用jquery做到这一点?

3 个答案:

答案 0 :(得分:0)

尝试使用.animate() jquery方法:

$('div').click(function () {
    $(this).animate({
        backgroundPositionX: '+=50%'
    },0);
});

答案 1 :(得分:0)

fiddle Demo

$('div').click(function () {
    var perc = parseInt($(this).attr('style').match(/\d+%/g)) + 50;
    $(this).attr('style', "background-position: " + perc + "% 0");
});

<小时/> 或

fiddle Demo

$('div').click(function () {
    var perc = parseInt($(this).attr('style').match(/\d+%/g)) + 50;
    $(this).css("background-position", perc + "% 0");
});

答案 2 :(得分:0)

$('div').css('background-position', function (i, value) {
    var x = parseInt(value, 10);
    return (x + 50) + "%" + " 0";
});