禁用轮播提前按钮

时间:2013-10-24 11:45:46

标签: javascript jquery html css css3

我有一个由左右箭头控制的3个窗格的旋转木马。我希望左窗格在窗格1上禁用,右箭头在窗格3上禁用,因此轮播不会自行循环。

我已经编写了一个按钮禁用功能,似乎可以正常工作,但是当我尝试从正确的窗格中调用它时不会。

这是推进轮播窗格的javascript,在右箭头按钮上点击:

if(currentPane==1){

        currentPane=2;

        $("#carouselDots").css('background-image', 'url(images/dots_2.png)');   
}
else if(currentPane==2){

        currentPane=3;

        $("#carouselDots").css('background-image', 'url(images/dots_3.png)');

        disableRButton();               
}

这是disableRButton函数:

function disableRButton()
{
    $("#carouselBtn").button("disable");
}

我还希望按钮在禁用时更改其BG img这是我在CSS中尝试做的事情:

.carouselBtn:disabled{
background:transparent url('images/carouselArrowDisabled.png')no-repeat;}

关于为什么按钮没有禁用的任何想法都会很棒。另外,在CSS中使用此禁用按钮标记的正确方法是什么,或者更好地在javascript中更改按钮的BG img?

3 个答案:

答案 0 :(得分:0)

我不认为jquery有一个按钮函数,它将字符串说成禁用。您需要在按钮上添加禁用属性才能将其禁用。

例如

$("my-button").attr("disabled", true);

您正在使用:禁用选择器,但我认为选择器的第一部分是错误的。如果carouselBtn是.类的名称(如果它是ID的名称),则它应以#开头。您目前在不同的示例中混合使用这些。

答案 1 :(得分:0)

如果您使用的是jQuery UI Button Widget,则必须这样做:

$("#carouselBtn" ).button({disabled:true});

当您撰写"disabled"而不是"disable"时,它很可能会有效。

答案 2 :(得分:0)

你设置attr禁用那足以避免使用jquery设置背景后的点击次数

function disableRButton()
{
    $("#carouselBtn").attr("disabled",true);
    $("#carouselBtn").css("background-image",'images/carouselArrowDisabled.png');
}