点击显示弹层,点击别处隐藏弹出

蓝色看到坛友在问这个问题就着手写了一个,期间看到一个兄弟使用了tabindex=”-1″让我想起了以前确实用这个解决了很多的问题,比如点击按钮定位到某个位置,以前可能说添加一个锚点,现在使用tabindex就可以。多余的话就不多说了,还是说下咱们今天要说的话题,这个问题的难点就在于如何实现点击其他的地方可以隐藏弹出层上。如果你直接使用$(“body”).click()的话就会有问题,解决这个问题的关键就在于target和srcElement,你可以先查查这两个一个是标准的一个是ie的,ie9现在也支持target了。下面给出例子

提示:你可以先修改部分代码再运行。

下面给出一个使用了tabindex的方法,这个方法也有个问题,那就是当你点击按钮的时候先是显示,再点击的话应该是隐藏,但是这个click会和blur事件冲突,我解决的方案是使用了setTimeout来延迟了下这样就ok了,好了说这么多可能不是很明白毕竟是空说吗,下面给出代码

提示:你可以先修改部分代码再运行。

标签:

发表于 jquery

Post comment as twitter logo facebook logo
Sort: Newest | Oldest