2012-03-19 69 views
2

是否可以禁用鼠標點擊,而不是重新啓用鼠標點擊一個jQuery UI滑塊?jQuery - 用戶界面滑塊鼠標禁用和重新啓用鼠標

doen't jQuery的實例似乎起作用

代碼示例

初始化的滑塊與指定的禁用選項。

$(".selector").slider({ disabled: true }); 

在init之後獲取或設置disabled選項。

//getter 
var disabled = $(".selector").slider("option", "disabled"); 
//setter 
$(".selector").slider("option", "disabled", true); 

編輯1

繼承人是取消隱藏隱藏的複選框,觸發器....一旦點擊它應該在滑塊上禁用鼠標點擊,並允許複選框來接管。

 $pageHelpYes.click(function() { 

      $pageHelpHidden.animate({ 
        'height': '650px' 
      }, 1000); 
      $pageHelpYes.attr('disabled', 'disabled'); 
      $("#R_C-designPrice2, #R_C-designPrice, #R_C-designAdded").addClass('R_C-added'); 
      $pageHelpNo.removeAttr('disabled'); 
      $("#designHidden").val('Yes'); 

      var checkedCount = $(":checkbox:checked").length; 

      var s = $pageSlider, 
        val = s.slider("value", checkedCount), 
        step = s.slider("option", "step"); 
      s.slider("value", checkedCount); 
      $pages.val(("value", checkedCount)); 
      $amount.val([("value", checkedCount) * pageAmount]/[$daySlider.slider("value")]); 

    //Slider Mouse Disable Code below..... 
      var kill = $("pagesSlider").slider("option", "disabled"); 
      $("pageSlider").slider("option", "disabled", true); 

      $slideCalc.click(); 

繼承人滑塊代碼。

$pageSlider.slider({ 
      disabled: false, 
      animate: true, 
      range: "min", 
      value: 5, 
      min: 1, 
      max: 25, 
      step: 1, 
      slide: function (event, ui) { 
        $pages.val(ui.value); 
        $slideCalc.click(); 


      } 
    }); 

下面是隱藏複選框並重新激活滑動鼠標點擊的代碼。

 $pageHelpNo.click(function() { 
      $pageHelpHidden.animate({ 
        'height': '0px' 
      }, 1000); 
      $("#R_C-designPrice2, #R_C-designPrice, #R_C-designAdded").removeClass('R_C-added'); 
      $pageHelpYes.removeAttr('disabled'); 
      $pageHelpNo.attr('disabled', 'disabled'); 
      $("#designHidden").val('No'); 

    //Slider Re-activate Code below..... 
      var kill = $("pagesSlider").slider("option", "disabled"); 
      $("pageSlider").slider("option", "disabled", false); 
    }); 
+0

正如你說這我同意,但也許你應該解釋多一點詳細的你究竟嘗試做。在我聽起來你腦子裏有什麼特別的東西時,你必須改變滑塊本身的代碼。 – 2012-03-19 21:24:12

+0

添加了附加信息..... – 2012-03-19 22:15:46

+0

請你可以做一個演示的問題,如果可能的話,也許使用[jsFiddle](http://jsfiddle.net/) – andyb 2012-03-19 22:36:23

回答

3

您已經定義了滑塊變量:

$pageSlider.slider({  
    //... 
}); 

然後你叫禁用方法如下:

$("pageSlider").slider("option", "disabled", true); 

所以問題是,你使用的選擇了標籤命名爲「pageSlider」,我很確定它永遠不會存在。你必須使用滑塊變量。

嘗試禁用滑塊是這樣的:

$pageSlider.slider("option", "disabled", true); 
+0

今晚會給它一個鏡頭....感謝您的迴應。 – 2012-07-26 09:25:22