2014-01-27 42 views
0

我想要做的是在自定義消息框中添加一個時間函數,以使消息框在x時間內隱藏,但僅當用戶單擊適當的按鈕時纔會顯示。 (解僱)引導自定義警報關閉點擊和X時間?

我想利用bootstrap,但現在我想我還需要一些jQuery代碼。

這是我使用什麼來顯示信息:

<div class="notifier-box"> 
     <div class="custompm fade" id="message1"> 
      <p><a href="{U_PRIVATEMSGS}"> {L_YOU_HAVE} {PRIVATE_MESSAGE_INFO</a></p> 
      <button data-dismiss="alert" class="btn btn-small">{L_DISMISS}</button> 
     </div> 
    </div> 

使用此項功能:

<script> 
head.ready(function() { 
// some callback stuff 
$('#message1').toggleClass('in'); 
}); 
</script> 

回答

0

首先,你檢查的正確實施引導通知的(一些例子here):

<div class="alert alert-warning fade in" id="message1"> 
    <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button> 
    <strong>Holy guacamole!</strong> Best check yo self, you're not looking too good. 
</div> 

使用jQuery你需要設置一個計時器到汽車關閉提醒框,並綁定一個事件,該按鈕將與誰點擊解除警報:

$(function(){ 
    setInterval(function(){ 
     $("#message1").alert('close'); 
    },3000); // milliseconds to auto dismiss 

    $("#button_dismiss").on('click', function(){ 
     $("#message1").alert('close'); 
    }); 
}); 

更新:根據您的意見:

<div id="message1">I am an alert!</div> 

<script> 
    $(function(){ 
     // Set a global timeout handler 
     var timeoutHandle = window.setTimeout(function(){ 
      $("#message1").addClass('hide'); 
     }, 2000); 

     $("#some-button").on('click', function(){ 
      // Clear current timeout 
      window.clearTimeout(timeoutHandle); 

      $("#message1").removeClass('hide'); 
      timeoutHandle = window.setTimeout(function(){ 
       $("#message1").addClass('hide'); 
      }, 2000); 
     }); 
    }); 
</script> 
+0

抱歉,我想我沒有正確解釋自己。基本上我想添加一個計時器功能的點擊。所以如果用戶點擊關閉,即使他們刷新頁面,自定義通知也會保持隱藏時間x秒。現在,彈出窗口會在有消息時自動觸發。所以如果用戶沒有閱讀消息,彈出窗口將一直顯示。你知道我在說什麼嗎? – user2513846

+0

明白了。你可以嘗試使用[這個插件](http://rendro.github.io/countdown/),檢查選項和方法。 –

+0

是的,我看到了一個。我不想使用任何額外的腳本。如何在點擊時集成這樣的東西,這樣它會隱藏我的自定義提醒並將超時設置爲隱藏狀態? ('#some-button')。attr(「disabled」,「disabled」); setTimeout('enableButton()',5000); function enableButton(){('#some-button')。removeAttr('disabled'); } – user2513846