react 中的blur事件

我们知道,想要手动触发blur事件时候,可以使用:https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/blur

Element.blur()

然而在react中,当你想手动触发一个input的blur事件时,你会得到一个错误:blur is not a function

在react中,当我们要操纵dom时候,我们一般会使用ref,比如focus事件:

this.ref.current.focus() // 这个会运行的很好
this.ref.current.blur() // 这个会报错

解决办法:避开了直接触发blur事件。。。(好low啊感觉,直接逃避问题???♀?)

原文地址:https://www.cnblogs.com/yadiblogs/p/10170704.html

时间: 2024-10-07 12:16:28

react 中的blur事件的相关文章

React中,map出来的元素添加事件无法使用

在使用react中,经常用到react的map函数,用法和jquery里中的map一样,但是,如果你在每个map出来的元素中添加,你会发觉添加的事件无法关联, 比如,我们很多的评论,我需要在每个评论下面加一个回复的input,input期初是隐藏的,当我点击每天评论下面的回复时,input输入框显示 这里举个例子,比如我数组里有三组文字,我把它们渲染到li中,点击每个li,alert()出每个li里面的内容,按照下面的方法,你会发觉出错,无法显示 var myTest = React.creat

React 中阻止事件冒泡的问题

在正式开始前,先来看看 JS 中事件的触发与事件处理器的执行. JS 中事件的监听与处理 事件捕获与冒泡 DOM 事件会先后经历 捕获 与 冒泡 两个阶段.捕获即事件沿着 DOM 树由上往下传递,到达触发事件的元素后,开始由下往上冒泡. IE9 及之前的版本只支持冒泡 | A -----------------|--|----------------- | Parent | | | | -------------|--|----------- | | |Children V | | | | --

react中元素事件传入参数写法

react中的元素绑定事件并且传入参数,不能使用箭头函数,否则传参会立即调用 错误写法:页面刷新会立即调用 <li key={index+item} onClick={this.deleteItem(index)} > {item} </li> deleteItem = (index) => { console.log(index) } 正确写法:click的时候才会调用 <li key={index+item} onClick={this.deleteItem.bin

React中事件的处理

React 中使用 onClick 类似的写法来监听事件,注意 this 绑定问题 React 里严格遵循单项数据流,没有数据双向绑定,所以要处理两件事,第一是元素本身值的赋值,第二是值改变以后的事件,例如输入框需要设置 value 和 onChange . 1.在 src -> components 文件夹中,再新建 CartSample.js ,具体代码如下: import React, { Component } from 'react'; export default class Car

React中setState同步更新策略

本文和大家分享的主要是React中setState同步更新相关内容,希望对大家学习React有所帮助. 为了提高性能React将setState设置为批次更新,即是异步操作函数,并不能以顺序控制流的方式设置某些事件,我们也不能依赖于 this.state 来计算未来状态.典型的譬如我们希望在从服务端抓取数据并且渲染到界面之后,再隐藏加载进度条或者外部加载提示: componentDidMount() { fetch('https://example.com') .then((res) => re

说说focus /focusin /focusout /blur 事件

事件触发时间 focus:当focusable元素获得焦点时,不支持冒泡:focusin:和focus一样,只是此事件支持冒泡:blur:当focusable元素失去焦点时,不支持冒泡:focusout:和blur一样,只是此事件支持冒泡: 以前一直以为所有事件都是支持冒泡的,都是可以cancel的,查阅了[MDN上相关资料](https://developer.mozilla.org/en-US/docs/Web/Events)后,才发现有些事件支持冒泡,有些事件并不支持冒泡:有些事件有默认行

JavaScript中的Event事件对象详解

JavaScript事件[event] 在JavaScript中对于事件来讲,首先,我们需要了解这样几个概念:事件:事件处理程序:事件类型:事件流:事件冒泡:事件捕获:事件对象:浏览器内核:事件绑定:事件方面的性能优化(事件委托.移除事件处理程序):常见的浏览器兼容问题等. 什么是事件event: JavaScript事件是:浏览器.文档(document)窗口中的发生的特定的交互瞬间:而JavaScript和HTML之间的交互行为就是通过事件来触发的. 事件处理程序: 事件处理程序:我们用户在

深入理解React(二) —— 数据流和事件原理

版权声明:本文由左明原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/158 来源:腾云阁 https://www.qcloud.com/community 这个,叫做竹笕,是中日传统禅文化中常见的庭院装饰品,它的构造可简单可复杂,但原理很简单,比如这个竹笕,水从竹笕顶部入口流入内部,并按照固定的顺序从上向下依次流入各个小竹筒,然后驱动水轮转动.对于强迫症患者来说,观赏竹笕的绝对是一种很享受的过程的最爱,你会发现这些小玩意

focus、blur事件的事件委托处理(兼容各个流浏览器)

今天工作中遇到个问题,问题是这样的,一个form表单中有比较多的input标签,因为form中的input标签中的值都需要前端做客户端校验,由于本人比较懒而且特不喜欢用循环给 每个input元素添加blur事件处理,感觉这样有损专业前端形象!想过用事件委托,然而focus.blur事件利用冒泡机制搞事件委托行不通啊,父级元素不支持focus.blur咋办???? 由此引发了对此问题的思考,人生就是这样,总觉得自己NB的不行,感觉自己什么都会,然而你在没遇到boss的时候打着小怪一直都会觉得自己天