通过event对象的fromElement属性解决热区设置主实体的一个bug
点击“设为主实体”这个超链接后,原来的提示框会变色,而且会显示内容:“已经设置为合并主实体”。
问题:当a热区的提示框上的超链接下面有另一个热区b的时候,点击a热区提示框的超链接后,会触发b热区的mouseover事件,导致a热区的提示框会消失。
这个问题我苦思了好久也找不到解决方法,上星期周俊提示我可以检测一下事件的来源元素。我突然想到IE的event对象有一个属性 fromElement,测试了一下,果然在点击a热区提示框的超链接后,b热区的mouseover事件里的fromElement为null,这样就好办了,在显示热区的提示框的函数里,判断一个fromElement是否为null,如果为null则return。至此问题解决,虽然这个 fromElement只存在于IE的event中。
相关推荐
-
通过event对象的fromElement属性解决热区设置主实体的一个bug
点击"设为主实体"这个超链接后,原来的提示框会变色,而且会显示内容:"已经设置为合并主实体". 问题:当a热区的提示框上的超链接下面有另一个热区b的时候,点击a热区提示框的超链接后,会触发b热区的mouseover事件,导致a热区的提示框会消失. 这个问题我苦思了好久也找不到解决方法,上星期周俊提示我可以检测一下事件的来源元素.我突然想到IE的event对象有一个属性 fromElement,测试了一下,果然在点击a热区提示框的超链接后,b热区的mouseover事
-
Vuex给state中的对象新添加属性遇到的问题及解决
目录 Vuex给state中的对象新添加属性遇到的坑 向vuex对象中增加新的属性需要注意 总结 Vuex给state中的对象新添加属性遇到的坑 state.js中有一个空对象obj: export default { ... obj: {} } 在App.vue中点击“给空对象增加属性”按钮,触发事件addObjAttr: <template> <div id="app"> ... <button @click="a
-
MongoDB用Mongoose得到的对象不能增加属性完美解决方法(两种)
一,先定义了一个goods(商品)的models var mongoose = require('mongoose'); var Schema = mongoose.Schema; var productSchema = new Schema({ "productId":String, "producName": String, "salePrice":Number, "productImage":String }); mod
-
解决vue A对象赋值给B对象,修改B属性会影响到A的问题
实际在vue中 this.A = this.B,没有进行深层赋值,只是把this.A的地址指向了与this.B相同的地址,所有对于A的修改会影响到B. 解决相互影响的思路是在this.A必须是新建的一个对象,这样才能保证不被指向同一地址,属性修改不会相互影响. 解决方式: this.A=JSON.parse(JSON.stringify(this.B)); 将对象转成字符串剔除对象属性后,再转换成对象赋值,这样能解决指向相同地址修改会相互影响的问题. 以上这篇解决vue A对象赋值给B对象,修改
-
JavaScript event对象整理及详细介绍
Event属性和方法: 1. type:事件的类型,如onlick中的click: 2. srcElement/target:事件源,就是发生事件的元素: 3. button:声明被按下的鼠标键,整数,1代表左键,2代表右键,4代表中键,如果按下多个键,酒把这些值加起来,所以3就代表左右键同时按下:(firefox中 0代表左键,1代表中间键,2代表右键) 4. clientX/clientY:事件发生的时候,鼠标相对于浏览器窗口可视文档区域的左上角的位置:(在DOM标准中,这两个属性值都不考虑
-
javascript Event对象详解及使用示例
Event代表事件状态,如事件发生的元素,键盘状态,鼠标位置和鼠标按钮状态.一旦事件发生,便会生成Event对象,如单击一个按钮,浏览器的内存中就产生相应的 event对象. event对象只在事件发生的过程中才有效. event的某些属性只对特定的事件有意义.比如,fromElement 和 toElement 属性只对 onmouseover 和 onmouseout 事件有意义. [event属性]: altKey, button, cancelBubble, clientX, clien
-
js鼠标点击事件在各个浏览器中的写法及Event对象属性介绍
IE 左键是 window.event.button = 1 右键是 window.event.button = 2 中键是 window.event.button = 4 没有按键动作window.event.button = 0 Firefox 左键是 event.button = 0 右键是 event.button = 2 中键是 event.button = 1 没有按键动作 event.button = 0 Opera 7.23/7.54 鼠标左键是 window.event.but
-
JavaScript让IE浏览器event对象符合W3C DOM标准
复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu
-
让Firefox支持event对象实现代码
通常为了兼容IE与FireFox,一般的事件处理方法为: 复制代码 代码如下: btn.onclick=handle_btn_click; function handle_btn_click(evt){ if(evt==null)evt=window.event;//IE //处理事件. } 对于简单的程序,这不算麻烦. 但对于一些复杂的程序,某写函数根本就不是直接与事件挂钩的.如果要把event传进该参数,那么所有的方法都要把event传来传去..这简直就是噩梦. 下面介绍一个解决这个麻烦事的
-
js window.event对象详尽解析
event代表事件的状态,例如触发event对象的元素.鼠标的位置及状态.按下的键等等. event对象只在事件发生的过程中才有效. event的某些属性只对特定的事件有意义.比如,fromElement 和 toElement 属性只对 onmouseover 和 onmouseout 事件有意义. 例子 下面的例子检查鼠标是否在链接上单击,并且,如果shift键被按下,就取消链接的跳转. <HTML> <HEAD><TITLE>Cancels Links</T
随机推荐
- 学习php分页代码实例
- jquery操作select option 的代码小结
- Windows 操作系统的安全设置
- SqlDataSource 链接Access 数据
- 基于JavaScript实现购物网站商品放大镜效果
- 关于获取DIV内部内容报错的原因分析及解决办法
- asp提高首页性能的一个技巧
- 基于vue2.0实现的级联选择器
- jquery访问servlet并返回数据到页面的方法
- 病毒的万能查杀方法第1/2页
- 关于phpmyadmin2.8及以后版本的安装
- 将Python中的数据存储到系统本地的简单方法
- php去掉文件前几行的方法
- 路由器配置新手入门,实用收集
- 小程序异步问题之多个网络请求依次执行并依次收集请求结果
- SpringBoot实现动态定时任务
- python使用递归的方式建立二叉树
- python中selenium操作下拉滚动条的几种方法汇总
- 在layui框架中select下拉框监听更改事件的例子
- my.cnf(my.ini)重要参数优化配置说明