Knockout.js 如何将特定的鼠标按钮单击绑定到敲除?
很抱歉提出新手问题,但我在文档中的任何地方都看不到:Knockout.js 如何将特定的鼠标按钮单击绑定到敲除?,knockout.js,Knockout.js,很抱歉提出新手问题,但我在文档中的任何地方都看不到: 你点击了好几次 点击我 var viewModel={ 点击次数:ko.可观察(0), 递增ClickCounter:函数(){ var previousCount=this.numberOfClicks(); 此.numberOfClicks(previousCount+1); } }; 如果我希望根据单击鼠标左键、右键或中键来执行不同的操作,该怎么办?是否有一个特定的绑定,或者您是否连接到事件并使用event.which或其他什么?
你点击了好几次
点击我
var viewModel={
点击次数:ko.可观察(0),
递增ClickCounter:函数(){
var previousCount=this.numberOfClicks();
此.numberOfClicks(previousCount+1);
}
};
如果我希望根据单击鼠标左键、右键或中键来执行不同的操作,该怎么办?是否有一个特定的绑定,或者您是否连接到事件并使用event.which或其他什么?我在这里做了一个选择,右边的按钮是bind,您可以通过data bind=“event:{contextmenu:incrementClickCounter}”
中间的老鼠我还没弄明白。希望这个答案对你有所帮助。让我知道你的想法;)
HTML:
<div>
You've clicked <span data-bind="text: numberOfClicks"></span> times
<button data-bind="click: incrementClickCounter">Click me</button>
<button data-bind="event: { contextmenu: incrementClickCounter }">Click me</button>
</div>
感谢Leroy,我使用if(event.which==2){//middle}在函数中使用鼠标中键,不确定这是否是正确的方法,尽管它是否有效,为什么不;)您还可以查看[link]并创建自己的绑定!
<div>
You've clicked <span data-bind="text: numberOfClicks"></span> times
<button data-bind="click: incrementClickCounter">Click me</button>
<button data-bind="event: { contextmenu: incrementClickCounter }">Click me</button>
</div>
var viewModel = {
numberOfClicks : ko.observable(0),
incrementClickCounter : function() {
var previousCount = this.numberOfClicks();
this.numberOfClicks(previousCount + 1);
}
};
ko.applyBindings(viewModel);