通过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
随机推荐
- AngularJs Understanding Angular Templates
- js Canvas实现的日历时钟案例分享
- 图解RedHat AS4.0硬盘版安装教程
- C# Quoted-Printable编码、解码
- 新手学习前端之js模仿淘宝主页网站
- 优化WordPress的Google字体以加速国内服务器上的运行
- Android启动内置APK和动态发送接收自定义广播实例详解
- JavaScript中Cookie操作实例
- Android编程实现获得内存剩余大小与总大小的方法
- spring boot 静态资源处理方法
- MySQL一个语句查出各种整形占用字节数及最大最小值的实例
- href下载文件根据id取url并下载
- c# DateTime常用操作实例(datetime计算时间差)
- Android调用系统自带的分享功能实例代码
- Cisco-Pix515e-r-IKE配置示例
- Vue.js与 ASP.NET Core 服务端渲染功能整合
- vue.js element-ui validate中代码不执行问题解决方法
- ES6之模版字符串的具体使用
- vue移动端html5页面根据屏幕适配的四种解决方法
- NET Core 3.0 AutoFac内置DI替换的新姿势分享