键盘点击事件

接angluarjs自定义标签,添加键盘点击事件。

//键盘事件
$scope.keyCheck = function(){
	//console.log(window.event.keyCode);
	//第一行是否选中
	var firstcheck=$("#"+tableuniqueflag+"2").hasClass("checktrcolor");
	//表格是否有行选中,ischecktr数组
	var ischecktr=$("#table"+tableuniqueflag+"").find(".checktrcolor");
	//向上方向键
	if (window.event.keyCode==38) {
		if(ischecktr.length!=0){
			//取选中行的id属性值 <tr id="a2">...</tr>
			var checkrowid=$("#table"+tableuniqueflag+"").find(".checktrcolor").attr("id");
			//第一行标题,所以当行数为不等于2时,选中行id=id-1;
			if(parseInt(checkrowid.substring(1,2))!=2){
				var nextcheckrowid= parseInt(checkrowid.substring(1,2))-1;
				$("#"+tableuniqueflag+nextcheckrowid).parent().children().removeClass("checktrcolor");
				$("#"+tableuniqueflag+nextcheckrowid).addClass("checktrcolor");
			}
		}
	}
	//向下方向键
	if (window.event.keyCode== 40){
		if(ischecktr.length!=0){
			//取选中行的id属性值,<tr id="a3"> ...</tr>
			var checkrowid=$("#table"+tableuniqueflag+"").find(".checktrcolor").attr("id");
			//当不是最后一行时,选中行id=id+1
			if(parseInt(checkrowid.substring(1,2))!=rows){
				var nextcheckrowid= parseInt(checkrowid.substring(1,2))+1;
				$("#"+tableuniqueflag+nextcheckrowid).parent().children().removeClass("checktrcolor");
				$("#"+tableuniqueflag+nextcheckrowid).addClass("checktrcolor");
			}
		}else if(!firstcheck){
			//第一次点击向下的方向键,选中第二行数据(第一行标题行)
			$("#"+tableuniqueflag+"2").addClass("checktrcolor")
		}
	}
	//回车键
	if (window.event.keyCode== 13){
		var checkrowid=$("#table"+tableuniqueflag+"").find(".checktrcolor").attr("id");
		var tridcheck=parseInt(checkrowid.substring(1,2));
		if(ischecktr.length!=0){
			$scope.selectRow(tridcheck);
		}
	}
}
//失去焦点
$scope.inputblur = function(){
	var checkrowid=$("#table"+tableuniqueflag+"").find(".checktrcolor").attr("id");//a2
	//判断是否有选中行
	if(checkrowid!=""){
		//去掉表格行的选中状态
		$("#"+checkrowid).parent().children().removeClass("checktrcolor");
	}
	$(mydivlocation).css('display','none');
}

上一文章修改的input

replacetagTemplate='<input type="text" id=inputable'+""+tableuniqueflag+' ng-keyup="showtablediv();" ng-keydown="keyCheck()" ng-blur="inputblur();"></input>';
$scope.showtablediv= function (){
	...略
	//方向键和回车键不触发,防止选中之后重新触发创建表格函数
	if(keycode=="37"||keycode=="38"||keycode=="39"||keycode=="40"||keycode=="13"){
		return;
	}
	...略
	$scope.createMyTable(rows,cells);
	...略
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-04 16:07:40

键盘点击事件的相关文章

JS 鼠标、键盘 点击事件

//鼠标点击事件$(function () {    document.onmousedown = function (event) {        //清空数据        second = 0;    }});//键盘的keydown事件$(function () {    document.onkeydown = function (event) {        var e = event || window.event || arguments.callee.caller.argu

JS通过键盘点击事件实现div移动

页面内容:文本框模拟键盘点击   div元素实现移动: <body> <textarea id="myarea" ti></textarea> <hr> <div id="mydiv" title="dddddiv"></div> </body> div样式可以自行定义: JS脚本代码如下: 当键盘输入'a'或'A'时,div向左移动10px script typ

ios 最新系统bug与解决——微信公众号中弹出键盘再收起时,原虚拟键盘位点击事件无效

最近ios发布新版本系统12.1,随着部分用户的系统更新,一些问题也渐渐暴露出来... 公司用户反映微信公众号出现了点击无效的bug!!测试调查发现,只有iphonex.iphone6,ihpone7等部分机型会出现该问题 我当时就是一惊,一般出现在事件上的问题都是疑难杂症.何况是跟键盘相关的. 我们都知道在H5端是没法监控键盘的弹出与收起的,resize事件触发的机型极其有限,何况我在ios中实测没有触发,安卓反而可以.因为安卓弹起键盘时会修改视窗的大小,但是ios并不会,如果你在ios上设置

iOS开发实战——CollectionView点击事件与键盘隐藏结合案例(二)

我在前一篇博客中<iOS开发实战--CollectionView点击事件与键盘隐藏结合案例>详细实现了CollectionView与键盘组合操作中出现的多种情况,并解决了交互体验上的一些问题.在实际项目中也的确可以采用这种方法来操作.但是问题来了,原来的界面我们是使用UIView来操作的,也就是界面是不可滚动的.然而更为常见的场景是一个ScrollView,界面可以进行上下滚动.所以,这篇博客主要是对前一个案例进行优化.还有一个问题是,在自动布局Masonry结合ScrollView中,会碰到

iOS7_ios7_如何实现UIAlertView以及监听点击事件(其它样式)_如何修改UITextField默认键盘样式

首先我们知道,UIAlertView实际上有多种样式,在xcode中,按住cmd点击UIAlertView,进入头文件我们看到: 1 typedef NS_ENUM(NSInteger, UIAlertViewStyle) { 2 UIAlertViewStyleDefault = 0, //默认样式 3 UIAlertViewStyleSecureTextInput, //加密文本样式 4 UIAlertViewStylePlainTextInput, //普通文本样式 5 UIAlertVi

移动端弹出软键盘导致input光标和点击事件错位问题

我遇到的问题:在微信浏览器里,点击蒙层的input框,弹出软键盘,蒙层被顶上去,同时input的焦点和button的点击事件也被顶上去了,软键盘消失,蒙层回到原位,但是点击input和button均没反应,点击蒙层被顶上去的位置有反应,因为input的焦点和button的点击事件没回到原位.这个问题出现在ios中,android手机没问题. 以下是一位大佬写的解决方法,解决了我的问题. 原文地址:https://blog.csdn.net/Doubleu_/article/details/865

JavaScript实现禁用键盘和鼠标的点击事件

编写自定义的JavaScript函数maskingKeyboard()和rightKey(); maskingKeyboard():禁用键盘 rightKey():禁用鼠标右键 <script type="text/javascript"> //屏蔽键盘的单击事件 function maskingKeyboard(){ if(event.keyCode == 8){ event.keyCode = 0; event.returnValue = false; alert(&q

echarts对每个data[i]的图片添加点击事件

1.综述:以饼图为例,只需要对echarts对象option添加以下几行代码即可 //添加点击事件(单击),还有其他鼠标事件和键盘事件等等 myChart1.on("click", function (param){ alert(param.dataIndex+':'+option1.series[0].data[param.dataIndex].name); }); 2.效果图 3.目录结构 4.<head></head>和<body></b

winform中键盘和鼠标事件的捕捉和重写(转)

在 编写winform应用程序时,有时需要无论在哪个控件获取焦点时,对某一个键盘输入或者鼠标事件都进行同样的操作.比如编写一个处理图片的应用程序时, 希望无论当前哪个控件获得焦点,当用户按上.下.左.右键时,图片控件的滚动条都会上下左右移动,当用户拨动鼠标滚轮时图片总能发大或缩小.如果对每个控 件的键盘或鼠标事件都进行设置,必然会造成很多的重复工作.本文我将介绍如何在winform下对某一个键盘输入或者鼠标事件进行相同的操作. 1.键盘事件的捕捉和重写 首先是键盘操作,为了实现上述功能,现在介绍