jquery解决onmouseover和onmouseout合用的bug问题

经常会遇到鼠标放到一个元素上显示另外一个元素,这两个元素是父子关系,比如在A上绑定mouseover和mouseout事件来显示或隐藏B元素,A元素包含B元素,当鼠标移到B元素后浏览器认为你移开了A,所以就隐藏了B,下边这段代码解决这个问题,

var price_tip_pop = null;
$(‘div.v-price-tips‘).mouseout(function(){
    clearTimeout(price_tip_pop);
    price_tip_pop=setTimeout(function(){
        $(‘#price_tip‘).hide();
    },400);
}).mouseover(function(){
    if(price_tip_pop!=null){
        clearTimeout(price_tip_pop);
        price_tip_pop=null;
    }
    $(‘#price_tip‘).show();
});
时间: 2024-11-12 14:23:39

jquery解决onmouseover和onmouseout合用的bug问题的相关文章

关于onmouseover和onmouseout的bug

总结了一下关于使用onmouseover以及onmouseout会出现的bug 首先简单的布局: <div id="box"> <div>这是一个内容</div> </div> 简单写了一下样式,效果如下: js代码如下: var oBox = document.getElementById("box"); oBox.onmouseover = function(){ alert("移入"); }

JS中onmouseover与onmouseout的bug

在Javascript中,父元素包含子元素,当给父元素设置onmouseover或onmouseout事件时,鼠标从父级移入子级的时候会多次触发onmouseover事件:鼠标从子级移入父级后再次移出的时候也会多次触发onmouseout事件.所以这个问题要解决,不然在以后的事例中出现很大的问题. 下面我们首先要熟悉几个对象与方法: 1)事件对象: 2)事件对象相关属性(只针对onmouseover与onmouseout): 标签源:oEvent.fromElement(从哪里来的元素):兼容I

onmouseover和onmouseout的bug

脑子不好用了,一点东西要看几遍才能记住,学过的东西也要好几遍,悲哀. 习惯了jquery的hover,或者看过hover源码,或者是正美的<框架设计>,onmouseover和onmouseout的bug问题,不过对于我等脑子不好用的,还是几个无bug的问题吧,看代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style> #div1{ width:

解决Select2控件不能在jQuery UI Dialog中不能搜索的bug

本文使用博客园Markdown编辑器进行编辑 1.问题呈现 项目中使用了jQuery UI的Dialog控件,一般用来处理需要提示用户输入或操作的简单页面.逻辑是修改一个广告的图片和标题. 效果截图如下: 使用Select2,主要是因为它支持下拉式搜索.所以在数据稍微多一点,作为搜索选择功能的首选.但是运行出来之后,发现搜索框无法点击.开始想到的index不够大,被其他的元素覆盖了.但是跳转z-index也无法解决.在普通的页面,搜索框是ok的. 2.解决办法 通过Google搜索,发现sele

onmouseover和onmouseout的烦恼

一个DIV层,当鼠标移进的时候会触发onmouseover,移出的时候会触发onmouseout. 非常easy的逻辑,这也是我们想要的!但随之烦恼也就来了:onmouseover并不会仅仅在移进时才触发,onmouseout也不会仅仅在移出时才触发!鼠标在DIV里面移动时也会可能触发onmouseover或onmouseout. 在上图中,对于'A'来说:当鼠标进入'A'(路径'1′)时那么就会触发'A'的onmouseover事件:接着鼠标移动到'B'(路径'2′),此时'A'会触发onmo

微信自带浏览器被输入法阻挡文本框的 jQuery 解决方法 by FungLeo

微信自带浏览器被输入法阻挡文本框的 jQuery 解决方法 by FungLeo 前言 做好了项目之后,在各种浏览器里面测试,都没有问题.很高兴,交付后端使用.然而发现在微信自带浏览器里面,却是出现了问题. 我的页面是一堆文本框,需要用户输入,当页面比较长的时候,在下面的文本框会被输入法给挡住-我勒个去. 写了一段JS脚本,测试了一下,发现,在正常的浏览器当中,当调出输入法的时候,视窗的高度,会减少,以适应输入法占据的屏幕空间.在QQ自带的浏览器里面,也是完全正常的.只有在微信里面,存在这个问题

用jQuery解决弹出层的问题

在BS 项目中 经常需要用到这种弹出层.做这种弹出层一般都会遇到下面几个问题:0,弹出层必须定义在input的下边显示.1,点击input弹出div层.2,点击div层外面任何地方,关闭div层.3,ie6下,div层与下拉框的优先级问题. 下面这个例子就是解决这些问题的,大家可以参考参考,有什么更好的解决方案,请留言. 超级简单版 演示:http://cssrain.cn/demo/popDiv/easyPopDiv.html 实例版 演示:http://cssrain.cn/demo/pop

asp+jQuery解决中文乱码

1. [代码][ASP/Basic]代码 '在客户端使用javascript的escape()方法对数据进行编码,在服务器端使用对等的VbsUnEscape()对数据进行解码,同样在服务器端使用VbsEscape()对数据进行编码,在客户端使用unescape()对数据进行解码'与javascript中的escape()等效    Function VbsEscape(str)        dim i,s,c,a         s=""        For i=1 to Len(

CSS实现onMouseOver、onMouseOut效果和层套菜单

在IE中 <a> 标签的.而实际上 WEB 标准里面, 应该对所有元素都支持.如果使用 Mozilla 或者 Opera, 那么可以看到不需要这个 htc 都可以正常运行的. 因为 htc 是 IE 特有的,别的浏览器不能理解,会忽略掉,不影响结果的显示. 以下这段 htc 是一个老外写的针对 IE 的 hover 行为的一个修正.有了这个代码就方便多了,而且最可贵的是,以上的这个页面例子是可以兼容 IE, Mozilla 和 Opera 的. 原先在html里都是使用onMouserOver