点击加一:

<!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. HighCharts之2D柱状图、折线图的组合双轴图

    HighCharts之2D柱状图.折线图的组合双轴图 1.实例源码 DoubleAxis.html: <!DOCTYPE html> <html> <head> & ...

  2. Oracle SQL Developer中SQL语句格式化快捷键

    Oracle SQL Developer中SQL语句格式化快捷键 格式化SQL语句:Ctrl+F7

  3. JavaScript控制输入框只能输入非负正整数

    1.问题背景 问题:一个输入框,输入的是月份,保证输入的内容只能是非负正整数 2.JavaScript代码 function checkMonth() { $("month").k ...

  4. Python实现一些常用排序算法

    一些常用的排序 #系统内置排序算法#list.sort()#heapq模块 def sys_heap_sort(list): import heapq heap = [] for i in range ...

  5. BFS-九宫格重排(详解)

    BFS将近两年没练过题了,今天重新回忆下以前刷的蓝桥杯题:九宫格重排 样例输入  //初始状态 //终点状态 样例输出  //最短步数 样例输入  //初始状态 //终点状态 样例输出  //最短步数 ...

  6. 在ASP.NET 中检测手机浏览器(转)

    引言 之前做的项目中需要在浏览器查看PDF文件.在电脑端没有问题,但是手机端网页打开失败. 后来使用了pdf.js,个人认为pdf.js的页面不够清爽,就希望网站能自动检测登录设备,电脑端保持原样,手 ...

  7. 浏览器之window对象--javascript

    window对象代表打开的浏览器窗口,是Web浏览器所有内容的主容器.window对象是整个对象链条结构的最高层,是其他对象的父对象,在调用window对象的方法和属性时,可以省略window对象的引 ...

  8. 【BZOJ1305】跳舞(网络流)

    [BZOJ1305]跳舞(网络流) 题面 Description 一次舞会有n个男孩和n个女孩.每首曲子开始时,所有男孩和女孩恰好配成n对跳交谊舞.每个男孩都不会和同一个女孩跳两首(或更多)舞曲.有一 ...

  9. 【Luogu3041】视频游戏的连击(AC自动机,动态规划)

    题面链接 题解 首先构建出AC自动机 然后在AC自动机上面跑DP 转移很显然从Trie树的节点跳到他的儿子节点 但是要注意一个问题, 在计算的时候,每一个节点加入后能够 造成的贡献 要加上他的子串的贡 ...

  10. Java Web day01

    1.配置环境 Eclipse版本:Mars.2 Release (4.5.2) jdk版本: 配置Eclipse (1)更改编码 工作空间 jsp页面编码 (2)更改背景颜色及字体大小 (3)安装jr ...