在js中事件和事件属性各指的是什么?二者有何区别?

JavaScript06

在js中事件和事件属性各指的是什么?二者有何区别?,第1张

事件:

是js中特有的东西。js就是基于事件驱动的一门语言。

想一下js的实现,都(大多数)是通过用户与浏览器的交互,比如你点击某个控件,鼠标放上,ajax请求等等,你的这些操作其实都是触发了js中定义的具体的事件,你可以给具体的事件绑定处理事件的函数。

我们常用的事件有:click,mouseover,mouseout等等。

事件属性:

表示的是具体的事件的一些特性,这些属性是让你更好的去控制这个事件,比如点击事件有属性可以判断点击的位置,点击时候是不是按下了哪个键盘按键,点击是鼠标左键还是鼠标右键。

关于事件的一些知识,强烈建议你去看下《javascript权威指南》,里面对事件,事件属性,事件目标,事件触发等等各种含义都解释的相当到位,相信你看了一定有帮助。

同时很希望帮到你,看到下面专家的回答,我压力还是蛮大的,真心希望我的回答能解决你的问题。

最近学习了target属性,是真的强大,可以不使用for()循环或者数组forEach()去判断我点击或者我需要找的是哪个元素,直接使用target点击就可获取。

接下来说说target哪里强大。

先看看target是什么意思

target 事件属性可返回事件的目标节点(触发该事件的节点),如生成事件的元素、文档或窗口。

我认为target事件就是会自动判断我们点的是哪个元素,我给大家举个简单的例子

当我们的鼠标点击第一个li时,会提示“你刚刚点击了我”,并打印<li>今天6.11</li>

当我们的鼠标点击第二个li时,会提示“你刚刚点击了我”,并打印<li>今天6.12</li>

当我们的鼠标点击第三个li时,会提示“你刚刚点击了我”,并打印<li>今天6.13</li>

还有各个属性,说几个比较常用的

获取文本内容: tar.textContent

获取父级节点: tar.parentNode

获取节点名称: tar.nodeName

需要注意,使用target获取到的节点名称全部为大写

这就是他的强大的地方,会根据我们鼠标点击的元素来返回相应的数据,帮助我们更快的获取该属性,感兴趣的朋友可以试试。

用v-on指令或者@监听DOM事件,并在触发时运行一些JavaScript代码;

参考:JS,Vue2,介绍,与Vue3区别,MVVM设计模式,模板语法,数据绑定

Vue中的事件修饰符:

1、prevent:阻止默认事件(常用);

2、stop:阻止事件冒泡(常用);

3、once:事件只触发一次(常用);

4、capture:使用事件的捕获模式;

5、self:只有event.target是当前操作的元素时才触发事件;

6、passive:事件的默认行为立即执行,无需等待事件回调执行完毕;

Vue中常用的按键别名:

回车 =>enter、删除 =>delete (捕获“删除”和“退格”键)、退出 =>esc、空格 =>space、换行 =>tab (特殊,必须配合keydown去使用)、上 =>up、下 =>down、左 =>left、右 =>right等。

代码案例

模板内的表达式是非常便利的,用于简单的运算。当其过长或逻辑过于复杂时,会难以维护,因此,当遇到复杂的逻辑时应该使用计算属性,用computed计算属性。

代码案例

通过watch来响应数据的变化。

代码案例

class样式,写法:class="xxx" ,其中xxx可以是字符串、对象、数组。

1、字符串写法适用于:类名不确定,要动态获取。

2、对象写法适用于:要绑定多个样式,个数不确定,名字也不确定。

3、数组写法适用于:要绑定多个样式,个数确定,名字也确定,但不确定用不用。

style样式,写法::style="{fontSize: xxx}",其中xxx是动态值;:style="[a,b]"其中a、b是样式对象。

代码案例