¿Cómo usar HTML5 arrastrar y soltar en combinación con KnockoutJS?
Parece que no puedo vincularme a eventos html5 de arrastrar y soltar.
Aquí hay un ejemplo de una plantilla:
<script id="tabsTemplate" type="text/html">
<div class="dropzone" for="tab"
data-bind="event:{dragover: function(event){event.preventDefault();},
dragenter: function(event){event.target.addClass('dragover'); event.preventDefault();},
dragleave: function(event){event.target.removeClass('dragover'); event.preventDefault();}}
drop: function(event){console.log('blahblah!')}"></div>
<h1 class="tab" draggable="true"
data-bind="attr: {selected: $data.name === $item.selected()},
click: function(){$item.selected($data.name)},
event:{ dragstart: function(event){console.log('blah!!')},
dragend: function(event){document.getElementsByClassName('dragover')[0].removeClass('dragover')}}">
${name}
<img src="icons/close-black.png" class="close button" role="button"
data-bind="click: function(e){$item.close($data)}">
</h1>
</script>
Lo que tengo debería funcionar como se esperaba ... y lo hace siempre que los haga en línea normales. Sin embargo, ¡entonces los otros enlaces no funcionan!
Recibo este mensaje de error:
Uncaught SyntaxError: token inesperado '||' jquery-tmpl.js: 10
¿Que está pasando aqui? ¿Hay algo que estoy haciendo mal?