点击加一:

<!doctype html>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>
KNOCKOUT LESSON
</title>
<link rel="stylesheet" type="text/css" href="css/main.css" />
<style>
#content1{padding:16px;}
</style>
<script type="text/javascript" src="scripts/knockout30.js"></script>
</head> <body>
<div id="content1">
<b id="countView" data-bind="html:CurrentIndex"></b><br />
<input id="countButton" type="button" value="点击" data-bind="click:CountAdd" />
</div> <script type="text/javascript" src="scripts/jQuery183.js"></script>
<script>
$(document).ready(function(){
/*var currentindex = 0;
var countButton = $('#countButton');
var countView = $('#countView');
countButton.on('click',function(){
currentindex = currentindex + 1;
countView.html(currentindex);
});*/
var ViewModel = function(){
var self = this;
self.CurrentIndex = ko.observable();
self.CountAdd = function(){
var currentIndex = self.CurrentIndex();
currentIndex = currentIndex+;
self.CurrentIndex(currentIndex);
}
}
var currentViewModel = new ViewModel();
ko.applyBindings(currentViewModel); });
</script> </body>
</html>

点击加一,悬停变红:绑定多个事件

<!doctype html>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>
KNOCKOUT LESSON
</title>
<link rel="stylesheet" type="text/css" href="css/main.css" />
<style>
#content1{padding:16px;}
</style>
<script type="text/javascript" src="scripts/knockout30.js"></script>
</head> <body>
<div id="content1">
<b id="countView" data-bind="html:CurrentIndex,style:{color:IndexColor}" style=""></b><br />
<!--<input id="countButton" type="button" value="点击" data-bind="click:CountAdd" />-->
<input id="countButton" type="button" value="点击" data-bind="event:{click:CounterAdd,mouseover:CounterOver,mouseout:CounterOut}" />
</div> <script type="text/javascript" src="scripts/jQuery183.js"></script>
<script>
$(document).ready(function(){
var ViewModel = function(){
var self = this;
self.CurrentIndex = ko.observable();
self.CounterAdd = function(){
var currentIndex = self.CurrentIndex();
currentIndex = currentIndex+;
self.CurrentIndex(currentIndex);
};
self.IndexColor = ko.observable('black');
self.CounterOver = function(){
self.IndexColor('red');
};
self.CounterOut = function(){
self.IndexColor('black');
};
}
var currentViewModel = new ViewModel();
ko.applyBindings(currentViewModel);
});
</script> </body>
</html>

改进:当点击到二十时,提示,并且隐藏

<!doctype html>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>
KNOCKOUT LESSON 4
</title>
<link rel="stylesheet" type="text/css" href="css/main.css" />
<style>
#content1{padding:16px;}
</style>
<script type="text/javascript" src="scripts/knockout30.js"></script>
</head> <body>
<div id="content1">
<b id="countView" data-bind="html:CurrentIndex,style:{color:IndexColor}" style="">0</b><br />
<!--<input id="countButton" type="button" value="点击" data-bind="click:CountAdd" />-->
<input id="countButton" type="button" value="点击" data-bind="event:{click:CounterAdd,mouseover:CounterOver,mouseout:CounterOut}" />
</div> <script type="text/javascript" src="scripts/jQuery183.js"></script>
<script>
$(document).ready(function(){
var ViewModel = function(){
var self = this;
self.CurrentIndex = ko.observable(0);
self.CounterAdd = function(){
var currentIndex = self.CurrentIndex();
if(currentIndex >= 20){
alert('你点击次数过多');
$('#countView').hide();
return false;
}else{
currentIndex = currentIndex+1;
self.CurrentIndex(currentIndex);
}
};
self.IndexColor = ko.observable('black');
self.CounterOver = function(){
self.IndexColor('red');
};
self.CounterOut = function(){
self.IndexColor('black');
};
}
var currentViewModel = new ViewModel();
ko.applyBindings(currentViewModel);
});
</script> </body>
</html>

Konckout第五个实例:各种事件绑定的更多相关文章

  1. Konckout第三个实例:循环绑定 -- table列表数据的填充

    传统js:拼接字符串,再写入指定标签中 <!DOCTYPE html> <html> <head> <meta charset="utf-8&quo ...

  2. 小程序实践(五):for循环绑定item的点击事件

    微信展示列表效果借助于 wx:for  简单写一个列表(wxml文件中): 对应的数据源(js文件中): 写一个点击监听: 效果: 以上.可以实现列表的item点击效果,但是无法到点击的item对应的 ...

  3. js实例分析JavaScript中的事件委托和事件绑定

    我们在学习JavaScript中,难免都会去网上查一些资料.也许偶尔就会遇到“事件委托”(也有的称我“事件代理”,这里不评论谁是谁非.以下全部称为“事件委托”),尤其是在查JavaScript的事件处 ...

  4. jQuery事件绑定和委托实例

    本文实例讲述了jQuery事件绑定和委托.分享给大家供大家参考.具体方法如下: jQuery事件的绑定和委托可以用多种方法实现,on()  . bind()  . live()  . delegate ...

  5. JavaScript(第二十五天)【事件绑定及深入】

    事件绑定分为两种:一种是传统事件绑定(内联模型,脚本模型),一种是现代事件绑定(DOM2级模型).现代事件绑定在传统绑定上提供了更强大更方便的功能.   一.传统事件绑定的问题 传统事件绑定有内联模型 ...

  6. MVVM设计模式和WPF中的实现(四)事件绑定

    MVVM设计模式和在WPF中的实现(四) 事件绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...

  7. jquery 选择器、筛选器、事件绑定与事件委派

    一.jQuery简介 1.可用的jQuery服务器网站:https://www.bootcdn.cn/ jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTMLdocume ...

  8. MVVM设计模式和在WPF中的实现(四) 事件绑定

    系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中的实现(三)命令绑定 MVVM模式解析和在WPF中的 ...

  9. 微信小程序事件绑定

    一 通过实例来认识 (一) 给出代码 我们直接通过一个实例来引入我们想要讲解的内容: <input type="text" bindinput="handleInp ...

随机推荐

  1. Android WebView的缓存方式分析

    WebView的缓存可以分为(1)页面缓存和(2)数据缓存. 页面缓存是指当WebView加载一个网页时的html.JS.CSS等页面或者资源数据.这些缓存资源是由于浏览器的行为而产生,开发者只能通过 ...

  2. Caused by: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in

    1.错误描述 严重: Exception sending context initialized event to listener instance of class org.springframe ...

  3. eclipse和android studio的爱恨情仇

    Eclipse,以下简称ES(自己起的,不喜勿喷):Android studio,以下简称AS(都这么叫的啦)! 2000年,IBM怀胎24个月,终于产生了Eclipse,当时ES的诞生只是为了解决I ...

  4. freemarker之list遍历(八)

    1.设置数据源 /** * * @Title:student * @Description: * @param:@param name * @return: void * @throws */ pri ...

  5. 【BZOJ3930】选数(莫比乌斯反演,杜教筛)

    [BZOJ3930]选数(莫比乌斯反演,杜教筛) 题面 给定\(n,K,L,R\) 问从\(L-R\)中选出\(n\)个数,使得他们\(gcd=K\)的方案数 题解 这样想,既然\(gcd=K\),首 ...

  6. [SCOI2008]斜堆

    题目大意 1.题目描述 斜堆(skew heap)是一种常用的数据结构. 它也是二叉树,且满足与二叉堆相同的堆性质: 每个非根结点的值都比它父亲大.因此在整棵斜堆中,根的值最小. . 但斜堆不必是平衡 ...

  7. [HAOI2011]problem a

    题目大意: 网址:https://www.luogu.org/problemnew/show/2519 大意: 一次考试共有\(n\)个人参加, 第\(i\)个人说:"有\(a_i\)个人分 ...

  8. 【BZOJ1216】操作系统(堆,模拟)

    [BZOJ1216]操作系统(堆,模拟) 题面 题目描述 写一个程序来模拟操作系统的进程调度.假设该系统只有一个CPU,每一个进程的到达时间,执行时间和运行优先级都是已知的.其中运行优先级用自然数表示 ...

  9. 第三方工具 - 关于echarts下钻功能的一些总结.js

    废话:好久没有写博客了,每每看着自己的'战绩'都有点愧疚,但是这段时间确实学习了不少东西,待我慢慢地一 一梳理,将之消化并分享. ---------------------------$O_O$--- ...

  10. webstorm修改工具栏主题

    ** 操作如图所示 **