取消自定义点击绑定,返回true防止点击劫持
Knockout custom click binding, return true to prevent click hijack?
所以我们都知道return true
手动将允许对具有click
绑定的元素进行默认点击操作,但如果我有如下自定义绑定呢:
ko.bindingHandlers.action = {
init: function(element, valueAccessor, allBindingsAccessor, context) {
var options = valueAccessor();
var params = options.slice(1);
//wrap it in function, with parameter binding
var newValueAccessor = function() {
return function() {
options[0].apply(context, params);
};
};
ko.bindingHandlers.click.init(element, newValueAccessor, allBindingsAccessor, context);
}
};
它从绑定中获取N个参数:
action: [handle, 'open', $index()]
如何允许点击通过?handle
中的return true
在这种情况下不起作用。
您的实际点击处理程序在这里定义:
return function() {
options[0].apply(context, params);
};
只要更改它,它就会返回所提供的子处理程序的值:
return function() {
return options[0].apply(context, params);
};
相关文章:
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- AngularJS-使用'true'属性
- 谷歌地图劫持了iphone's滚动(触摸事件)-如何恢复
- JavaScript-切换“;全部检查”;复选框true/false
- location.reload(true)崩溃浏览器选项卡
- 指令的模板必须只有一个根元素:With restrict E&替换true
- JavaScript:只有当数组中的所有项都为true时才执行函数
- 对于loop.if-仅在经过所有间隔后返回true
- if(foo!==null)的计算结果为true,即使foo为null
- ngIf的计算结果始终为true
- 如果函数返回True,则显示Javascript按钮
- (false==false==true)怎么可能是真的
- Javascript If else 只返回 TRUE 或只返回 FALSE
- sails.js beforeCreate方法只接收required设置为true的模型属性
- 在$state.go之后执行$window.location.reload(true)
- 尝试简化检查对象键是否为true并将其推送到另一个对象
- 过滤器返回true或false
- 什么是'true'和'false'和'null'
- 如何使用选项useCSS set true为bxSlider加载onSlideAfter()事件
- 取消自定义点击绑定,返回true防止点击劫持