我一直在尋找一個通知欄,就像本網站上的通知欄一樣,它顯示在頂部,通知用戶更改等。它應該具有被關閉的能力。我所能找到的jquery是this one可以被解僱的jQuery通知欄?
有沒有人有任何其他的建議或建議?
我一直在尋找一個通知欄,就像本網站上的通知欄一樣,它顯示在頂部,通知用戶更改等。它應該具有被關閉的能力。我所能找到的jquery是this one可以被解僱的jQuery通知欄?
有沒有人有任何其他的建議或建議?
超級容易建立自己的。只要將其作爲第<div>
的<body>
標籤下,和CSS設置是這樣的:
#notify {
position:relative;
width:100%;
background-color:orange;
height:50px;
color:white;
display:none;
}
然後在您的通知,只要向下滑動:
$('#notify').html('new message').slideDown();
和一個點擊事件添加到關閉並清除通知:
$('#notify').click(function(){
$(this).slideUp().empty();
});
演示:http://jsfiddle.net/AlienWebguy/Azh4b/
如果您想真正使其像StackOverflow一樣,您只需在發出通知時設置一個cookie,然後每個頁面加載顯示所有具有適用cookie的通知。
如果您想要多個通知,請將#notify
更改爲.notify
並堆疊起來。事情是這樣的:
$('.notify').live('click',function() {
$(this).slideUp('fast',function(){$(this).remove();});
});
$(function(){
notify('You have earned the JQuery badge!');
notify('You have earned the Super Awesome badge!');
});
function notify(msg) {
$('<div/>').prependTo('body').addClass('notify').html(msg).slideDown();
}
從來沒有考慮建立我自己的...是有道理的。謝謝你,謝謝你的好例子:) – Paul
不客氣,很高興幫助:) – AlienWebguy
我已經爲我的幾個項目做了一些非常類似的事情。
有一個JSFiddle demo,它可以工作,但它可以從我的個人庫中直接獲取 - 可能使用清理和優化的代碼,但它對它的工作原理給予了很好的印象。
我的代碼額外的好處是它不顯示重複的項目 - 它「ping」現有的項目。點擊通知上的任何地方關閉它。
我可以看到的唯一缺點是它覆蓋了一些主要內容,但如果您將通知容器放在position: static
的內容頂部,那麼這是可以修復的。
請讓我知道是否有任何細節你想讓我解釋;在一個答案中有相當多的代碼需要運行。
我可能會寫一個jQuery插件,在某些時候這樣做,看到只有一個例子。我會在這裏發佈它。
NB。 setInterval()
僅用於演示目的。此外,還有不同的彩色警報(成功,信息,警告,錯誤 - 分別爲綠色,藍色,橙色和紅色)。
你可能想嘗試 「noty」 https://github.com/needim/noty
這是真的* *容易。即使這個網站有一個! – Blender
@Blender:「即使這個」聽起來很簡單,因爲*即使* Stackoverflow也能運行。 –
本網站上的大部分內容都非常簡單(並且編碼明顯)。 – Blender