0

这个问题令人困惑。在 jsfiddle 上它可以工作http://jsfiddle.net/mdanz/aXjH5/16/

当您按下数字时,#bid-up该数字应上升并在 mouseup/mouseleave 时停止。在我的网站上,mouseup/mouseleave 不起作用,firebug 中没有错误。此外,如果我.live()从 中删除#bid-up并且只是做按钮不起作用。关于什么是错的任何想法,这些问题可以联系起来吗?我无法发布指向该网站的链接,因为我仍在开发它。$('#bid-up').mousedown(function() {#bid-up

HTML:

<div id='bid-child-container-2'><input type='text' style='color:#707070;font-size:26px;margin-right:5px;text-align:center;width:100px;font-family:arial;' id='bid-price' readonly value='5.1' />
</div>
<div id='bid-child-container-3'>
<div id='bid-up' style='color:#707070;font-size:14px;font-family:arial; cursor:pointer; margin-top:20px; border:1px solid #707070; width:100px; text-align:center;' data-on='1'>up</div>

</div>​

JavaScript:

$('#bid-up').live('mousedown', function() {

    var button = $(this);

    button.data('interval', setInterval(function() {

        var number = button.parent('div').siblings('#bid-child-container-2').find('#bid-price').val();
        var newnumber = number.split('.');
        var on = button.attr('data-on');

        button.siblings('#bid-down').attr('data-on', '1');

        if (newnumber[1] < 9) {
            var first = newnumber[0];
            var second = parseInt(newnumber[1]) + 1;
        }

        if (newnumber[1] == 9) {
            var first = parseInt(newnumber[0]) + 1;
            var second = 0;
        }

        var finalnumber = first + '.' + second;
        button.parent('div').siblings('#bid-child-container-2').find('#bid-price').val(finalnumber);


    }, 200));


}).bind('mouseup mouseleave', function() {
    clearInterval($(this).data('interval'));
});​
4

0 回答 0