0

我正在研究 jQuery,我正在渲染一个图表。因为我在图表的右侧和左侧都有可滚动的箭头。我要求的功能是:

  • 每当数据更多并且我们自动单击右箭头时,左滚动箭头必须可见。
  • 如果没有更多数据,右键必须是不可见的。
  • 如果没有足够的数据滚动,左键必须是不可见的。
  • 总结一下:按钮应该只有在可以使用的情况下才可用。

到目前为止,这是我的代码:

$(function() {
    var $box2 = $('.column'), totalWidth = 900, cursor = 0;

    $("#rightarrrowbutton").click(function() {
        if (cursor != totalWidth) {
            $box2.animate({
                marginLeft : "-=15"
            }, "fast");
            cursor += 100;
        }
    });
    if ($("#rightarrowbutton").click(){
        $('#leftarrowbutton').click(function() {
            if (cursor != 0) {
                $box2.animate({
                    marginLeft : "+=15"
                }, "fast");
                cursor -= 100;
            }
        });
    });
}
4

3 回答 3

0

试试看

$("#rightarrrowbutton").click(function() {
 $("#leftarrowbutton").show();  
 });

  $("#leftarrowbutton").click(function() {
 $("#rightarrrowbutton").show();

  });
于 2013-06-11T13:54:57.710 回答
0

与其尝试附加和删除点击处理程序,不如在页面加载时添加它们和.hide()/或.show()根据需要添加按钮。

$('#rightarrowbutton').click() {
    // do your stuff
    if (/*there's no more stuff to the right*/) {
        $('#rightarrowbutton').hide();
    }
    $('#leftarrowbutton').show();
}

和左键类似。

于 2013-06-11T13:56:41.403 回答
0

我知道您的描述谈到了可见性,但您的问题标题提到了启用。要禁用,您可以将属性"disabled"放在<button>元素中。如果存在,它将被禁用,如果缺少它将被启用。.click()因此,您可以在回调期间删除或添加该属性。

例如:

$("#leftarrowbutton").click(function ()
{
    // if meets ending criteria
    if (true)
    {
        // enable other button
        $("#rightarrowbutton").removeAttr("disabled");

        // disable current button
        $("#leftarrowbutton").attr("disabled", true);
    }
});
于 2013-06-11T14:19:43.073 回答