2011-03-11 76 views
14

我在jQuery UI的主題頁面上看到了這些,並認爲它們很整潔。用jQuery UI顯示消息

我不知道如何顯示這些風格都以靜態方式使用JavaScript消息。

在此先感謝。

回答

14

使用Chrome開發人員工具,我檢查了錯誤消息的HTML。您可以爲另一個做同樣的事情,或者您可以查看jQuery UI CSS Framework

HTML

​​

CSS

body { 
    font-family: Verdana,Arial,sans-serif; 
    font-size: 10px; 
} 

p { 
    margin: 1em 0; 
} 

strong { 
    font-weight: 900; 
} 

可以使用addClass方法添加這些類以編程方式使用JS。另請參閱可用於顯示/隱藏這些消息的showhide方法。

<button id="show">Show</button> 
<button id="hide">Hide</button> 

$("#show").click(function() { 
    $(".ui-widget").show(); 
}); 

$("#hide").click(function() { 
    $(".ui-widget").hide(); 
}); 

請參閱fiddle

0

複製jQuery UI生成的類和HTML結構,並確保包含jQuery UI主題。

1

只需使用螢火蟲檢查該元素的HTML。看起來他們正在使用<div style="margin-top: 20px; padding: 0pt 0.7em;" class="ui-state-highlight ui-corner-all"> <p><span style="float: left; margin-right: 0.3em;" class="ui-icon ui-icon-info"></span> <strong>Hey!</strong> Sample ui-state-highlight style.</p> </div>

1

我已經修改了一個簡短的jQuery函數來將給定的一組div(包含文本)轉換爲錯誤/高亮元素。

你可以在this jsFiddle上看到它的行動。

這裏是JavaScript:

//function to create error and alert dialogs 
function errorHighlight(e, type, icon) { 
    if (!icon) { 
     if (type === 'highlight') { 
      icon = 'ui-icon-info'; 
     } else { 
      icon = 'ui-icon-alert'; 
     } 
    } 
    return e.each(function() { 
     $(this).addClass('ui-widget'); 
     var alertHtml = '<div class="ui-state-' + type + ' ui-corner-all" style="padding:0 .7em;">'; 
     alertHtml += '<p>'; 
     alertHtml += '<span class="ui-icon ' + icon + '" style="float:left;margin-right: .3em;"></span>'; 
     alertHtml += $(this).text(); 
     alertHtml += '</p>'; 
     alertHtml += '</div>'; 

     $(this).html(alertHtml); 
    }); 
} 

//error dialog 
(function($) { 
    $.fn.error = function() { 
     errorHighlight(this, 'error'); 
    }; 
})(jQuery); 

//highlight (alert) dialog 
(function($) { 
    $.fn.highlight = function() { 
     errorHighlight(this, 'highlight'); 
    }; 
})(jQuery);