Backbone - Sicht ist die Auslösung mouseout-Ereignis sogar tho es ist in der Wurzel.
Mit der backbokne.js mouseover-und mouseout-Ereignisse einer Sicht nicht funktionieren wie ich es erwarte:
Rote Teil (Wurzel div class) ist die Muttergesellschaft der innere div mit dem Namen info-box. Beim bewegen der Maus von der Wurzel, um die info-box, löst es ein "mouseout" - Veranstaltung für die root-auch wenn das info-Feld ist ein Kind der Wurzel. Allerdings will ich bleiben im inneren der Wurzel, während mein cursor bewegt sich von
Hier ist meine sehr einfache HTML:
<script type="text/template" id="box-template">
<div class="root">
<div class="info-box">
Test title
</div>
</div>
</script>
Hier ist meine Ansicht:
var DealViewClass = Backbone.View.extend({
events: {
'mouseover': 'boxMouseOver',
'mouseout': 'boxMouseOut'
},
boxMouseOver: function(e){
console.log('inside!');
}
},
boxMouseOut: function(e){
console.log('outside!')
}
});
Initialisiere ich meine Ansicht als solche:
var template = _.template($('#box-template').html());
var dealView = new DealViewClass({
model: model,
el: template
});
Wie kann ich lösen dieses Kind auslösen 'mouseout der übergeordneten Thema?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen
mouseenter
undmouseleave
stattmouseover
undmouseout
.Ändern Sie Ihre Veranstaltungen so, delegieren Sie an die
.info-box
Klasse:Ich bezweifle, dass es möglich sein kann, zu vermeiden, mouseout-Ereignis beim verschieben von übergeordneten div innerhalb div, aber es wird wieder mouseover-Ereignis auslösen ...
Sagen, dass, wenn Sie erklären, die Ereignisse für Ihre Ansicht, es wäre ratsam, um zu geben Sie die Selektoren ...
Habe ich ein Beispiel auf jsFiddle so ...
http://jsfiddle.net/Tn8PX/3/