这是我第一次访问堆栈溢出,我看到一个漂亮的标题消息,显示文本和关闭按钮.
标题栏是固定的,非常适合引起访客的注意.我想知道你们中是否有人知道代码来获得相同类型的标题栏.
快速纯JavaScript实现:
function MessageBar() { // CSS styling: var css = function(el,s) { for (var i in s) { el.style[i] = s[i]; } return el; }, // Create the element: bar = css(document.createElement('div'), { top: 0, left: 0, position: 'fixed', background: 'orange', width: '100%', padding: '10px', textAlign: 'center' }); // Inject it: document.body.appendChild(bar); // Provide a way to set the message: this.setMessage = function(message) { // Clear contents: while(bar.firstChild) { bar.removeChild(bar.firstChild); } // Append new message: bar.appendChild(document.createTextNode(message)); }; // Provide a way to toggle visibility: this.toggleVisibility = function() { bar.style.display = bar.style.display === 'none' ? 'block' : 'none'; }; }
如何使用它:
var myMessageBar = new MessageBar(); myMessageBar.setMessage('hello'); // Toggling visibility is simple: myMessageBar.toggleVisibility();
使用代码:
$(function(){ $('#smsg_link').click(function(){ showMessage('#9BED87', 'black', 'This is sample success message'); return false; }); $('#imsg_link').click(function(){ showMessage('#FFE16B', 'black', 'This is sample info message'); return false; }); $('#emsg_link').click(function(){ showMessage('#ED869B', 'black', 'This is sample error message'); return false; }); }); /* showMessage function by Sarfraz: ------------------------- Shows fancy message on top of the window params: - bgcolor: The background color for the message box - color: The text color of the message box - msg: The message text */ var interval = null; function showMessage(bgcolor, color, msg) { $('#smsg').remove(); clearInterval(interval); if (!$('#smsg').is(':visible')) { if (!$('#smsg').length) { $(''+msg+'').appendTo($('body')).css({ position:'fixed', top:0, left:0, width:'98%', height:'30px', lineHeight:'30px', background:bgcolor, color:color, zIndex:1000, padding:'10px', fontWeight:'bold', fontSize:'18px', textAlign:'center', opacity:0.8, margin:'auto', display:'none' }).slideDown('show'); interval = setTimeout(function(){ $('#smsg').animate({'width':'hide'}, function(){ $('#smsg').remove(); }); }, 3000); } } }
如果你想创建自己的,请查看slideToggle
jQuery 的功能.