Javascript 如果渲染任何其他视图,则要重新渲染的主干视图
我有一个TooltipView,每当鼠标滑过类为Javascript 如果渲染任何其他视图,则要重新渲染的主干视图,javascript,backbone.js,backbone-events,Javascript,Backbone.js,Backbone Events,我有一个TooltipView,每当鼠标滑过类为.tooltip的元素时,它就会弹出,并获取该元素数据tooltip属性的内容,并将其显示在tooltip中。 我将TooltipView的事件绑定到它的初始化函数中,但问题是如果动态创建或重新呈现另一个视图,则TooltipView不知道它 var tooltipView = Backbone.View.extend({ el: '#tooltip-container', initialize: function() {
.tooltip
的元素时,它就会弹出,并获取该元素数据tooltip
属性的内容,并将其显示在tooltip中。我将TooltipView的事件绑定到它的初始化函数中,但问题是如果动态创建或重新呈现另一个视图,则TooltipView不知道它
var tooltipView = Backbone.View.extend({
el: '#tooltip-container',
initialize: function() {
$('.tooltip').on('mouseover', function() {
....
}
}
}
我知道我可以在渲染每个视图时手动触发它们的事件,但是仅仅从TooltipView中就可以触发吗?我希望TooltipView侦听任何要渲染的视图,然后重新渲染它自己。可能将事件附加到更高的DOM级别对您有用:
initialize: function() {
$('body').on('mouseover', '.tooltip', function() {
....
}
}
不要忘了稍后解除绑定,尽管将事件附加到更高的DOM级别可能对您有用:
initialize: function() {
$('body').on('mouseover', '.tooltip', function() {
....
}
}
别忘了晚些时候解开它,尽管谢谢你的帮忙,你能解释一下怎么解开吗?为什么我以后要解开它呢?谢谢你,这真是个好办法,你能解释一下怎么解开吗?为什么我以后要解开它?