适用于jsfiddle,但不适用于我的网站

时间:2012-05-28 12:13:46

标签: jquery

这个问题令人困惑。在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'));
});​

0 个答案:

没有答案