jQuery的等价物's$(this)在Ractive.js事件代理中
Equivalent of jQuery's $(this) in Ractive.js event proxies
我在这里读到了关于Ractive.js事件代理的文章。
我现在想用Ractive.js中的事件代理替换点击事件(目前用jQuery编写)
$('.filter-close').click(function(){
$(this).parent().hide();
});
HTML很简单:
<a on-click="closeFilter" class="filter-close">close</a>
我知道如何在Ractive.js:中创建代理
ractive.on( 'closeFilter', function ( event ) {
//code here
});
如果我在那里放置了一个警报,它会在单击时正确执行。
我遇到的问题是,如何访问元素本身。在上面的示例中,我需要隐藏单击的元素的父元素。在jQuery中,我使用$(this)
来查找元素。我如何在Racive中做到这一点?
this
返回整个ractive对象,$(this)
抛出一个错误,我认为通过ID获取元素首先违背了使用Racive的目的。
我也知道在事件中传递参数的可能性,比如on-click="closeFilter:{{arg}}"
,但不知道在这种情况下arg
应该是什么(或者这是否是正确的方法)。
有人能在这里给我指正确的方向吗?
event.node
允许访问DOM元素
ractive.on( 'activate', function ( event ) {
// event.node will be the button (will be <button on-click='activate'>Activate!</button>)
});
要访问父节点,可以执行event.node.parentNode
如果您的页面上有jquery,那么您可以轻松地执行$(event.node.parentNode).hide();
因此,您在event.node之后,访问Javascript中的父节点并将其隐藏,如下所示。
ractive.on( 'activate', function ( event ) {
event.node.parentNode.style.display = 'none';
}
相关文章:
- 引用Ractive.js中的子属性
- 带破折号的Ractive.js变量
- jQuery的等价物's$(this)在Ractive.js事件代理中
- 在ractive.js中获取所选选项文本
- 当我追加到数组时,Ractive.js会追加或重新生成all吗
- Ractive.js,通过命名属性访问父属性
- 如何动态解析 Ractive.js 模板中使用的键路径列表
- 在 ractive.js 中使用具有 2 向绑定和迭代的单选按钮
- ractive js :与模板中键部分关联的嵌套对象列表的直接 DOM 插入排序/排序 #each 顺序
- 需要使用Ractive js显示树结构的帮助
- Ractive.js索引没有't似乎是被动的
- 为什么Ractive.js reset()和update()方法重复模板,因为有一个带有array.protype.so
- 检测Ractive.js中的组件内容更改
- Ractive.js模板循环
- 减少Ractive.js中的代码重复
- 如何使用ractive js循环列表并比较值
- 如何修复“;找不到部分“”的模板;在ractive.js中
- 正在读取Ractive.js中的计算属性
- 将数据转发到Ractive.js中的组件
- Ractive.js routing