我有一个底部导向的弹出窗口,我想比默认的弹出窗口更宽容,一旦鼠标离开触发器就会消失.
$('#example').popover({
html: true,
trigger: 'hover',
container: '#example',
placement: 'bottom',
content: function () {
return '<div class="box">here is some content</div>';
}
});
Run Code Online (Sandbox Code Playgroud)
只要鼠标悬停在触发器或弹出窗口内容上,我就可以保持打开状态,但这对用户来说很难,因为他们必须将鼠标从触发元素移动到箭头到内容而不离开这些区域为了与popover互动.考虑两种解决方案,两种解决方案都不起
1)延迟选项应该这样做.添加
delay: {hide: 500}
到popover调用会在鼠标离开后离开popover,但在它消失之前重新进入触发器elem或popover不会告诉bootstrap保持popover打开,因此在初始超时结束时消失.
2)加宽箭头的包含元素,使鼠标从触发元素到触发元素和弹出窗口之间的背景弹出工作(鼠标永远不会离开触发器/元素).除箭头之外的以下工作是使用重叠的CSS边框绘制的,因此背景不透明:http://jsfiddle.net/HAZS8/
.popover.bottom .arrow {
left: 0%;
padding-left:50%;
padding-right:50%;
}
Run Code Online (Sandbox Code Playgroud)
解决方法是使用jquery硬连接mouseover和mouseleave事件,或者用图像替换重叠边框箭头.更好的修复?
javascript css popover twitter-bootstrap twitter-bootstrap-2
我有实体框架设置来更新表.更新被一个代替触发器拦截,该触发器调用RAISERROR:
CREATE TRIGGER mySchema.UpdateBusinessObjects
ON mySchema.BusinessObjects
INSTEAD OF UPDATE
AS
RAISERROR(''test error from SQL'',16,1)
RETURN
Run Code Online (Sandbox Code Playgroud)
在我的repository类中,我试图捕获SQL中RAISERROR生成的SqlException:
public void SaveBusinessObject(BusinessObject b) {
try {
repo.Entry(b).State = EntityState.Modified;
repo.SaveChanges();
} catch (SqlException ex) {
// handle exception here
}
}
Run Code Online (Sandbox Code Playgroud)
问题是C#没有捕获SqlException; 它作为未处理的异常传递给调用者("用户未处理SqlException:来自SQL的测试错误").什么?!
看起来EF的SaveChanges()不知何故在我的try catch块上传递异常.我已经尝试将我的catch语句切换为catch(Exception ex),以防EF异常在某种程度上更通用,但我仍然得到一个未处理的SqlException.我错过了一些简单的东西吗?SaveChanges()方法有什么问题?