千家信息网

Angularjs中事件指令有哪些

发表于:2025-02-20 作者:千家信息网编辑
千家信息网最后更新 2025年02月20日,这篇文章给大家分享的是有关Angularjs中事件指令有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。ngClick适用标签:所有触发条件:单击#html click
千家信息网最后更新 2025年02月20日Angularjs中事件指令有哪些

这篇文章给大家分享的是有关Angularjs中事件指令有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

ngClick

适用标签:所有
触发条件:单击

#html
click me
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.click = function () { alert('click'); } });

ngDblclick

适用标签:所有
触发条件:双击

#html
click me
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.dblclick = function () { alert('click'); } });

ngBlur

适用标签:

  • a

  • input

  • select

  • textarea

触发条件:失去焦点

#html
link
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.blur = function () { alert('blur'); } });

ngFocus

适用标签:

  1. a

  2. input

  3. select

  4. textarea

触发条件:获取焦点

#html
link
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.focus= function () { alert('focus'); } });

ngChange

适用标签:input
触发条件:model更新

输入框的内容改变并不代表model的值更新。按我的理解,一般当两个状态互相切换时,model值会更新。两个状态我称之为合法状态和不合法状态。

不合法的状态:输入的内容不符合type类型,如email类型。输入的内容不符合校验条件,如ngMinlength。不合法的状态下,model会被更新成undefined。

合法的状态:输入的内容是符合类型和校验条件的。

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { //$scope.text=''; $scope.change = function () { alert('change'); } });

初始化和不初始化text的条件下,change触发是不一样的哦,这里涉及到model初始化和更新机制。

ngCopy

适用标签:

  1. a

  2. input

  3. select

  4. textarea

官方api上说使用的标签是这些,我没明白a和select复制有啥子用。另外,我换个div实际上也能触发copy事件。一般常用的就是input和textarea。

触发条件:复制。鼠标右键复制和快捷键Ctrl+C都会触发。

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.copy = function () { alert('copy'); } });

ngCut

适用标签:

  • a

  • input

  • select

  • textarea

触发条件:剪切。鼠标右键剪切和快捷键Ctrl+X都会触发。

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.cut = function () { alert('cut'); } });

ngPaste

适用标签:

ainputselecttextarea

触发条件:粘贴。鼠标右键粘贴和快捷键Ctrl+V都会触发。

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.paste = function () { alert('paste'); } });

ngKeydown

适用标签:所有

个人感觉还是input和textarea比较常用

触发条件:键盘按键按下

要把$event传过去,一般都是要判断按了哪个按键的。

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.keydown = function ($event) { alert($event.keyCode); } });

ngKeyup

适用标签:所有

个人感觉还是input和textarea比较常用

触发条件:键盘按键按下并松开

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.keyup = function ($event) { alert($event.keyCode); } });

ngKeypress

适用标签:所有

个人感觉还是input和textarea比较常用

触发条件:键盘按键按下

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.keypress = function ($event) { alert($event.keyCode); } });

keydown,keypress,keydown三者区别

引发事件的按键

非字符键不会引发 KeyPress 事件,但非字符键却可以引发 KeyDown 和 KeyUp 事件。

事件引发的时间

KeyDown 和 KeyPress 事件在按下键时发生,KeyUp 事件在释放键时发生。

事件发生的顺序

KeyDown -> KeyPress -> KeyUp。如果按一个键很久才松开,发生的事件为:KeyDown -> KeyPress -> KeyDown -> KeyPress -> KeyDown -> KeyPress -> ... -> KeyUp。

  • KeyDown触发后,不一定触发KeyUp,当KeyDown 按下后,拖动鼠标,那么将不会触发KeyUp事件。

  • KeyPress主要用来捕获数字(注意:包括Shift+数字的符号)、字母(注意:包括大小写)、小键盘等除了F1-12、SHIFT、Alt、Ctrl、Insert、Home、PgUp、Delete、End、PgDn、ScrollLock、Pause、NumLock、{菜单键}、{开始键}和方向键外的ANSI字符。

  • KeyDown 和KeyUp 通常可以捕获键盘除了PrScrn所有按键(这里不讨论特殊键盘的特殊键)。

  • KeyPress 只能捕获单个字符。

  • KeyDown 和KeyUp 可以捕获组合键。

  • KeyPress 可以捕获单个字符的大小写。

  • KeyDown和KeyUp 对于单个字符捕获的KeyValue 都是一个值,也就是不能判断单个字符的大小写。

  • KeyPress 不区分小键盘和主键盘的数字字符。

  • KeyDown 和KeyUp 区分小键盘和主键盘的数字字符。

  • 其中PrScrn 按键KeyPress、KeyDown和KeyUp 都不能捕获。

ngMousedown

适用标签:所有
触发条件:鼠标按下,左右中间按下都会触发

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.mousedown = function ($event) { alert($event.which); } });

ngMouseup

适用标签:所有
触发条件:鼠标按下弹起,左右中间按下弹起都会触发

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.mouseup = function ($event) { alert($event.which); } });

ngMouseenter

适用标签:所有
触发条件:鼠标进入

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.mouseenter = function () { alert('mouseenter'); } });

ngMouseleave

适用标签:所有
触发条件:鼠标离开

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.mouseleave = function () { alert('mouseleave'); } });

ngMousemove

适用标签:所有
触发条件:鼠标移动

#html
#scriptangular.module('learnModule', []) .controller('LearnCtrl', function ($scope) { $scope.mousemove = function () { alert('mousemove'); } });

ngMouseover

适用标签:所有
触发条件:鼠标进入

感谢各位的阅读!关于"Angularjs中事件指令有哪些"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

条件 标签 事件 鼠标 字符 按键 状态 键盘 内容 更新 单个 常用 数字 输入 个人 大小 小键盘 快捷键 感觉 类型 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 大学生网络安全活动策划书 无法跟服务器建立安全连接怎么办 保定软件开发价格走势 软件开发联想词语 网络技术文案伤感 吴沈括 网络安全法治体系解读 软件开发行业盈利方式 二级域名 不同服务器 浪潮服务器管理ip如何设置 网络安全国家标准332项是哪些 进暮色森林服务器要装mod吗 蓝山市启动网络安全宣传 杭州掌盛网络技术 汉中网络安全宣传周先进个人 企业网络安全论文题目怎么 第四届全国网络安全挑战赛 创造与魔法最新服务器多少 软件开发人月概念 申请ADNI数据库多久回复 查看邮件服务器地址 保定软件开发价格走势 新能源法规关于网络安全法规 市南区软件开发哪家靠谱 网络安全设备维保招标 nfc 软件开发 幼儿园网络安全伴我成长绘画 安徽森拓网络技术有限公司 图灵 数据库基础教程 服务器可以带两个主板吗 海淀数据库安全审计系统
0