【发布时间】:2014-08-06 15:40:39
【问题描述】:
我正在尝试将active 类名添加到单击的li。显示它已被选中。
我的模板:
var legCatagoryTemplate = "<ul>{{#legs:i}}<li><a href='#' on-click='selectCategory:{{this}},{{i}}' data-id='{{i}}'><figure><div class='imgWrapper'><img src='{{preview}}'></div><figcaption><h4>{{name}}</h4><p>W: {{width}}" H:<span></span>: {{material}}</p></figcaption></figure></a></li>{{/legs}}</ul>";
如何称呼:
var legCategoryView = new Ractive({
el: "#catalog",
template: legCatagoryTemplate,
data: response_from_ajax
});
我是如何处理这个事件的:
legCategoryView.on('selectCategory', function ( event, self, index ){
console.log(event.target, self, index);
}
我发现了什么:
event.target 是被点击的a 内的元素(例如div.imgwrapper、figcaption)
Non Ractive 的行为类似:click event on a div should not be triggered by it's children
使用点击代理对象定位元素的好方法是什么?
【问题讨论】:
标签: javascript dom-events ractivejs