2013-12-23 41 views
0

我使用下面的代碼片段顯示頁面加載後10秒的按鈕。點擊後,該動作成功發生,並且該按鈕在再次出現之前消失10秒。我希望能夠做到的是禁用按鈕而不是隱藏它(設計會跳過一點點)。我用JS/JQuery很弱,希望能得到一些指導。改變這個JS禁用按鈕,而不是隱藏它

 <a class="btn blue" id="manualReload" onclick="reloadResponses();"> 
      <i class="icon-refresh"></i>&nbsp;&nbsp;&nbsp;Reload Comments 
     </a> 

     function reloadResponses() { 

      $('#responses').load('loadComments.php?id=<?php echo $id;?>'); 

      manualReload.style.display ='none'; 

      setTimeout (function(){ 
       manualReload.style.display ='inline'; 
      }, 10000); 
     } 

我敢肯定,這很簡單,如果響應者不介意簡要說明他們的榜樣是如何工作的,我會學到一些東西,今晚:)

謝謝你,邁克爾

回答

0

在jquery的按鈕可以通過

被禁用0
$("#manualReload").prop("disabled",true); 

但在你的情況下manualReload不是一個按鈕。它的一個錨標籤,所以你必須做一些技巧。

添加樣式

a.disabled { color:#ddd; } 

當u要禁用的定位標記添加此

$('#manualReload').addClass('disabled'); 
在reloadResponses

然後函數運行檢查第一

if ($('#manualReload').hasClass('disabled')) return; 

和10後秒不要忘記刪除類以啓用錨標記

$('#manualReload').removeClass('disabled'); 
+0

非常感謝Vibin – Arbiter

0

嘗試此:

manualReload.disabled = true; 
+0

不適合我(已經嘗試過),但謝謝你的建議。是否有可能是因爲它是超鏈接而不是按鈕?或者這不重要? – Arbiter

+1

禁用僅適用於輸入類型元素,因此它不適用於錨點元素。 – Dennis

+0

謝謝@丹尼斯,我想我們都學到了一些Linuxios:') – Arbiter