![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
javascript
文章平均质量分 52
I_recluse
这个作者很懒,什么都没留下…
展开
-
子节点含有表单元素的div元素的blur事件
blur事件一般在表单元素如input元素才是存在的,对div、span等元素时无效的,但是可以给div元素加上tabindex属性,也可以让div等元素有焦点,所以blur事件就有效了。但如果你有这样的需求:div元素包裹有input元素,当你在input框中输入一些文本后,点击这个div元素区域外侧,这时你想让整个div失去焦点触发blur事件,在blur事件中进行一些逻辑处理。但是你直接给div绑定blur事件,或者给div加上tabindex属性然后再绑定blur事件,你发现都不会触发div原创 2020-05-23 21:28:09 · 1608 阅读 · 1 评论 -
js事件委托机制简述
事件委托是指利用事件冒泡的特性,将本应该注册在子元素上的处理事件注册在父元素上,这样点击子元素时发现其本身没有相应事件就到父元素上寻找作出相应。这样做的优势有:1.减少DOM操作,提高性能。2.随时可以添加子元素,添加的子元素会自动有相应的处理事件。...原创 2020-05-21 23:44:43 · 525 阅读 · 0 评论 -
js DOM事件模型浅析
事件模型按照DOM规范来说是有两种:DOM0级事件模型以及DOM2级事件模型。但由于IE浏览器的特殊性,IE8及以下浏览器不支持DOM2及事件模型,所以需要单独列出一项IE事件模型。尽管现在IE8及以下版本浏览器可以不作为兼容性考虑对象,但还是有必要说一下。1.DOM0级事件模型DOM0级事件模型是最早的事件模型,也叫做原始事件模型,所有浏览器都支持。这种事件模型比较简单,特点是:(1)没有事件流的概念,只会触发绑定目标元素的事件,不会冒泡或者捕获到其他DOM节点。(2)每个元素只能绑定一个原创 2020-05-20 00:38:42 · 266 阅读 · 0 评论 -
npm publish 发包报错400 Bad Request - Cannot publish over previously published version "1.0.0"
描述:npm publish 发布包时报code E400错误: npm ERR! 400 Bad Request - PUT https://registry.npmjs.org/form-tooltip - Cannot publish over previously published version "1.0.0"。原因:再次发布相同名称的包时,不能和上次发布包的版本一样解决方法:在package.json文件中,把包的版本号提高。...原创 2020-05-14 00:21:55 · 7930 阅读 · 1 评论 -
表单元素提示框组件form-tooltip(二)
上一节input动态搜索下拉框组件input-dynamic-select使用(一)整体介绍了form-tooltip的使用方法,这一节具体使用一个demo来说明组件的使用方法。demo整体结构如下:原创 2020-05-14 00:07:50 · 587 阅读 · 0 评论 -
表单元素提示框组件form-tooltip(一)
在使用form表单元素时,比如input元素可能会有这样的需求,当在input输入框输入无效的文本时,你可能需要在input上方或者下方出现一个悬浮提示框来提示用户,或者当input输入框为空且失去焦点时,你需要有一个提示框来提醒用户。面对这样的需求你可能一时找不到合适的组件来达到目的,只能自己去实现,比较麻烦。本文介绍一个组件: form-tooltip,就是解决这个问题,用户可以根据自己的需求自己设置不同样式的悬浮提示框。原创 2020-05-13 23:34:35 · 1559 阅读 · 0 评论 -
input动态搜索下拉框组件input-dynamic-select使用(二)
上一篇input动态搜索下拉框组件input-dynamic-select使用(一)大致介绍了input-dynamic-select组件的使用方法,现在通过一个demo具体介绍这个组件的使用方法。我使用node的express的框架简单搭建了一个后台服务接口,前端通过调用这个接口获取数据。1.整体结构首先,这个demo的整体结构如下:构建打包工具使用的是webpack,打包入口文...原创 2020-05-06 00:37:12 · 1536 阅读 · 0 评论 -
input动态搜索下拉框组件input-dynamic-select使用(一)
在做项目的时候,经常会用到动态搜索下拉框的需求,网上也没有找到很好的组件来达到这个目的,于是自己开发了一个这样的组件。该组件将更多的配置权给用户,用户可以根据自己的需求进行配置这个动态下拉框。下面先简单介绍这个组件的整体使用方法:git代码库:https://github.com/yog-zhang/input-dynamic-select.git如发现问题欢迎交流指正!1.下载安装(...原创 2020-05-04 00:27:35 · 2925 阅读 · 0 评论 -
js 创建函数的方式
js定义函数的方式有以下几种,下面简要介绍这几种方式以及它们各自的特点:1.函数声明方式function fun(x = 1){ return x;}这是最常见定义函数的方式,其特点式是:存在函数声明提升,会提升到当前作用域顶层2.函数表达式let fun = function(x = 1){ return x;}// var fun = funct...原创 2020-04-12 21:33:08 · 547 阅读 · 0 评论 -
proxy对象实现数据双向绑定
proxy对象顾名思义是对象的代理,对目标对象进行封装成代理对象,以达到读取、修改、查询目标对象属性等操作时起到拦截作用,对目标对象的默认操作进行重新定义。下面看一个例子:let obj = {name: 'zhangsan', age: 20}let objHandler = { get: function(target,propKey){ return '您访问...原创 2020-01-29 21:44:17 · 722 阅读 · 0 评论 -
js动态设置单选输入框(radio)选中状态
有时需要在js中动态控制单选输入框的选中状态,这一般有两种方法:1.通过设置input单选输入框的元素属性“checked”为“checked”,但需要注意的是,要把上一次设置的“checked”属性去掉,不然再次点击同一个元素的时候,选中状态就会错误。2.通过设置input单选输入框的DOM节点属性“checked”为true或false来实现。下面通过一个例子来说明两种方法,这个例...原创 2019-07-26 23:46:29 · 15592 阅读 · 0 评论 -
js setTimeout和for循环搭配使用时变量的问题
最近在写一个定时打字的效果,需要for循环和setTimeout搭配使用,出现了一些问题,在网上查找找到了问题所在。1.setTimeout(func,time)函数运行机制 setTimeout(func,time)是在time(毫秒单位)时间后执行func函数。浏览器引擎按顺序执行程序,遇到setTimeout会将func函数放到执行队列中,等到主程序执行完毕之后,才开始从执行队列(队列...原创 2018-06-09 13:44:53 · 11933 阅读 · 0 评论