Konckout第五个实例:各种事件绑定
点击加一:
<!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第五个实例:各种事件绑定的更多相关文章
- Konckout第三个实例:循环绑定 -- table列表数据的填充
传统js:拼接字符串,再写入指定标签中 <!DOCTYPE html> <html> <head> <meta charset="utf-8&quo ...
- 小程序实践(五):for循环绑定item的点击事件
微信展示列表效果借助于 wx:for 简单写一个列表(wxml文件中): 对应的数据源(js文件中): 写一个点击监听: 效果: 以上.可以实现列表的item点击效果,但是无法到点击的item对应的 ...
- js实例分析JavaScript中的事件委托和事件绑定
我们在学习JavaScript中,难免都会去网上查一些资料.也许偶尔就会遇到“事件委托”(也有的称我“事件代理”,这里不评论谁是谁非.以下全部称为“事件委托”),尤其是在查JavaScript的事件处 ...
- jQuery事件绑定和委托实例
本文实例讲述了jQuery事件绑定和委托.分享给大家供大家参考.具体方法如下: jQuery事件的绑定和委托可以用多种方法实现,on() . bind() . live() . delegate ...
- JavaScript(第二十五天)【事件绑定及深入】
事件绑定分为两种:一种是传统事件绑定(内联模型,脚本模型),一种是现代事件绑定(DOM2级模型).现代事件绑定在传统绑定上提供了更强大更方便的功能. 一.传统事件绑定的问题 传统事件绑定有内联模型 ...
- MVVM设计模式和WPF中的实现(四)事件绑定
MVVM设计模式和在WPF中的实现(四) 事件绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...
- jquery 选择器、筛选器、事件绑定与事件委派
一.jQuery简介 1.可用的jQuery服务器网站:https://www.bootcdn.cn/ jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTMLdocume ...
- MVVM设计模式和在WPF中的实现(四) 事件绑定
系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中的实现(三)命令绑定 MVVM模式解析和在WPF中的 ...
- 微信小程序事件绑定
一 通过实例来认识 (一) 给出代码 我们直接通过一个实例来引入我们想要讲解的内容: <input type="text" bindinput="handleInp ...
随机推荐
- HI3531ARM调试printf的实现
void UART_Putc(char c) { if (c == '\n') *(unsigned int *)(UART0_ADDR + 0X00) = '\r'; del ...
- 常用YUV转RGB代码
常用YUV转RGB [java] view plaincopyprint? public class YuvToRGB { private static int R = 0; private stat ...
- Caused by: java.lang.ClassNotFoundException: org.springframework.orm.hibernate4.HibernateTemplate
1.错误描述 严重: Context initialization failed org.springframework.beans.factory.CannotLoadBeanClassExcept ...
- Java中的java.math.BigInteger
Java中的java.math.BigInteger /** * */ package com.you.model; /** * @author YouHaidong * */ public clas ...
- RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操作)
在自动化过程中,我们经常需要连接不同的数据库,并且对数据库进行很多不同的操作,RobotFramework中,提供了DatabaseLibrary这个库来操作数据库,我们可以按照官网中的说明来安装Da ...
- 【xsy2115】Delight for a Cat
Time Limit: 1000 ms Memory Limit: 512 MB Description 从前,有一只懒猫叫CJB.每个小时,这只猫要么在睡觉,要么在吃东西,但不能一边睡觉一边吃东 ...
- checkBox半选中状态
checkbox 可以半选中,这个特性,很多浏览器都支持 // 用 input.indeterminate 这个属性来获取或者设置半选中状态,必须要用 js 添加属性,才有效果. input.inde ...
- assert断言检测
assert 是宏,非函数,包含在assert.h 头文件中. 如果其后面括号里的值为假,则程序终止运行,并提示出错.这个 宏只在 Debug 版本上起作用,而在 Release 版本被编译器完全优化 ...
- 数据处理框架:Pig
Pig pig 是基于hadoop的一个数据处理框架. MapReduce是使用java开发的.Pig有一套自己的数据处理语言.Pig的数据处理过程要转化为MR 来运行. Pig的数据处理语言是数据流 ...
- Sharepoint对List增删改操作
在sharepoint的开发过程中,用得最多的,就是获取sharepoint的列表数据,以及对其进行一系列的增删改查等操作,这里主要是记录一些常用的操作,通过对象模型方式对数据进行增删改查. 由于sh ...