我试图让Bootstrap Notify警报保持可见,直到用户解除它,而不会自动关闭.为此,根据我对文档的理解,我将delay设置设置为0.这是我的JS文件,包含在bootstrap-notify.js:
$(function () {
var alertTemplate = $("#notify-template").html();
$.notifyDefaults({ target: "_self" }, { type: "warning", delay: 0, template: alertTemplate });
});
var toasterNotify = function (alertTitle, alertMessage, alertUrl) {
alertUrl = alertUrl || "#";
$.notify({ title: alertTitle, message: alertMessage, url: alertUrl }, { delay: 0 });
}
Run Code Online (Sandbox Code Playgroud)
toasterNotify当我直接从click视图中的按钮上的事件调用它时,此函数完全按预期工作,但是当从服务器的SignalR回调中调用它时,如下所示,警报一出现就会立即关闭:
var hubProxy = $.connection.applicationHub;
hubProxy.client.alertNewClaim = function (model) {
toasterNotify(model.SourceFullName, model.Message);
};
Run Code Online (Sandbox Code Playgroud)
编辑:
我已经发现所涉及的控制器操作在返回视图结果之前将SignalR消息推送到客户端.因此,客户端立即收到SignalR消息并显示警报,只是让返回的视图刷新页面,快速删除警报.我还是不知道如何解决这个问题.
我有一个用于登录/注册操作的模态面板,如果使用bootstarp-notify登录失败,我会通知,但通知会出现在模态面板的模糊(禁用区域)之外.我想知道如何将我的通知附加到我的模态面板或(这对我来说是一个更好的解决方案)如何在前台显示通知而不是在模糊禁用屏幕下.我检查了bootstarp-notify 文档中的" element "参数,但我无法找到应该如何使用它.我应该使用jquery选择器指出元素或只是id或名称.
我已经使用bootstrap-growl了一段时间(v1.0.6),今天我将其更新为当前的 v2.0.0。
现在咆哮调用从 jQuery 抛出异常(v1.11 - 它匹配 bootstrap-growl 依赖项)
Uncaught TypeError: Cannot read property 'ownerDocument' of undefined
Run Code Online (Sandbox Code Playgroud)
正好在这个 jQuery 块中
Sizzle.contains = function( context, elem ) {
// Set document vars if needed
if ( ( context.ownerDocument || context ) !== document ) {
setDocument( context );
}
return contains( context, elem );
};
Run Code Online (Sandbox Code Playgroud)
这很公平 -context未定义,但我不知道为什么。
现在,我恢复了此更新,但如何摆脱异常?谁会导致问题?
PS 这不是这里描述的问题
在我的默认选项设置和调用下方。
默认设置:
$.growl.default_options = {
ele: "body",
type: "info",
allow_dismiss: true,
position: {
from: "top", …Run Code Online (Sandbox Code Playgroud)