例如筋斗云的效果,但不通过offset定位的flag标记
效果:mouseenter到li上出现背景图片,mouseleave后背景图片消失,click以后该背景图片被锁定
问题:简单的mouseenter,mouseleave和click事件不能达到预期的效果,因为当click事件结束后,同时也会触发mouseleave事件
解决方案:我们给每一个li一遍循环,给li动态添加flag属性,默认值为true,是这样的我们判断当flag为false给该li设置背景图片,为true给清空;所以当mouseenter的时候,给移入的li设置背景图片;当鼠标点击li的时候给li的flag设置为取反,而其余兄弟li的flag均赋予true的属性,给点击的li设置背景图片;最后通过判断flag来决定是否触发mouseleave事件,循环遍历li,如果li的flag为true的背景图片清空
代码示例,不完全针对这个,有html结构的差别
$(function () {
    $li = $(".gywm-content .content-main-left li");
    $($li[0]).find("a")
        .css({
            "background": "url('image/guanyuwomen_anniu_xuanzhogn.png')"
            , "color": " #ff2826"
        });
    $li.each(function (index, ele) {
        ele.flag = true;
    })
    $li.mouseenter(function () {
        $li.index = $(".gywm-content .content-main-left li").index($(this));
        $(this).find("a").css({
            "background": "url('image/guanyuwomen_anniu_xuanzhogn.png')"
            , "color": " #ff2826"
        });
    });
    $li.click(function () {
        $(this).siblings().each(function (index, ele) {
            ele.flag = true;
        });
        this.flag = !this.flag;
        $li.index = $(".gywm-content .content-main-left li").index($(this));
        $(".gywm-content .content-main-right li").removeClass("show");
        $(".gywm-content .content-main-right li").eq($li.index).addClass("show");
        $(this).find("a").css({
            "background": "url('image/guanyuwomen_anniu_xuanzhogn.png')"
            , "color": " #ff2826"
        });
    })
    $li.mouseleave(function () {
        $li.each(function (index, ele) {
            if (ele.flag) {
                $(ele).find("a")
                    .css({
                        "background": ""
                        , "color": " #333333"
                    });
            }
        })
    });
})												
											例如筋斗云的效果,但不通过offset定位的flag标记的更多相关文章
- Vue 事件监听实现导航栏吸顶效果(页面滚动后定位)
		Vue 事件监听实现导航栏吸顶效果(页面滚动后定位) Howie126313 关注 2017.11.19 15:05* 字数 100 阅读 3154评论 0喜欢 0 所说的吸顶效果就是在页面没有滑动之 ... 
- Bootstrap导航点击菜单跳转与点击缩放菜单折叠按钮缓冲效果插件jquery.singlePageNav.min.js
		引入步骤: <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></scrip ... 
- jQuery实现 图片的局部放大效果
		<html xmlns="http://www.w3.org/1999/xhtml"><head> <title></title> ... 
- Android之仿ele地图定位效果
		PS:最近项目要求,希望在选择地址的时候能够仿ele来实现定位效果.因此就去做了一下.不过ele使用高德地图实现的,我是用百度地图实现的.没办法,公司说用百度那就用百度的吧.个人觉得高德应该更加的精准 ... 
- HTML标签marquee实现滚动效果
		html标签 - <marquee></marquee>可以实现多种滚动效果,无需js控制.使用marquee标记不仅可以移动文字,也可以移动图片,表格等.只需要在<ma ... 
- marquee标签实现页面内容的滚动效果
		页面的自动滚动效果,可由javascript来实现, 但是有一个html标签 - <marquee></marquee>可以实现多种滚动效果,无需js控制. 使用marquee ... 
- html的<marquee></marquee>标签实现滚动效果
		页面的自动滚动效果,可由javascript来实现,但是今天无意中发现了一个html标签 - <marquee></marquee>可以实现多种滚动效果,无需js控制. 使用m ... 
- 数的n次方  s.match(reg)  marquee滚动效果
		一.数的n次方 <script> alert(math.pow(a,5)); /*输出a的5次方*/ </script> 二. s.match(reg); s代表一个字符串,r ... 
- JavaScript Table行定位效果
		作者:cloudgamer 时间: 2009-09-17 文档类型:原创 来自:蓝色理想 第 1 页 JavaScript Table行定位效果 [1] 第 2 页 JavaScript Table行 ... 
随机推荐
- mysql workbench连接不上远程数据库,xshell无法连接远程主机的问题
			1.先说xshell无法连接的问题 最近使用virtualbox装了个ubuntu-16.04,然后在win7上使用xshell连接,首先确认win7能ping通虚拟机ip.然后确认是否安装了open ... 
- acm 1002 算法设计
			最近突然想往算法方向走走,做了做航电acm的几道题 二话不说,开始 航电acm 1002 题主要是处理长数据的问题,算法原理比较简单,就是用字符数组代替int,因为int太短需要处理的数据较长 下面是 ... 
- HTML 5 背离贪吃蛇 写成了类似于屏幕校准
			中间写了改 改了写 还是没做出自己满意的效果 ,看来自己的确不是一个走前端的料子.当然h5还是学一点好一点 具体说来 就是 在canvas 的画布中 鼠标点击后画上一个圆形 然后就有随机的在画布上面出 ... 
- Web 前端之HTML和CSS
			Web 前端之HTML和CSS HTML被称为超文本标记语言(Hyper Text Markup Language),它不是一种编程语言,而是一种标记语言,标记语言是一套标记标签,HTML使用标记标签 ... 
- iOS自动检测版本更新
			虽然苹果官方是不允许应用自动检测更新,提示用户下载,因为苹果会提示你有多少个软件需要更新,但是有的时候提示用户一下有新版还是很有必要的. 首先说一下原理: 每个上架的苹果应用程序,都会有一个应用程序的 ... 
- sublime Text 3 安装emmet
			Emmet简介 Emmet是一个支持大部分流行文本编辑器的插件,能够极大得提高编写HTML和CSS的工作效率. 官网:http://emmet.io/ 在Sublime Text 3中安装 前提Sub ... 
- node - glob模块
			node的glob模块允许你使用 *等符号, 来写一个glob规则,像在shell里一样,获取匹配对应规则的文件. 这个glob工具基于javascript.它使用了 minimatch 库来进行匹配 ... 
- 【vuejs小项目——vuejs2.0版本】单页面搭建
			http://router.vuejs.org/zh-cn/essentials/nested-routes.html 使用嵌套路由开发,这里会出错主要把Vue.use(VueRouter);要进行引 ... 
- 【转】Wireshark基本用法
			原地址:http://blog.jobbole.com/70907/ 按照国际惯例,从最基本的说起. 抓取报文: 下载和安装好Wireshark之后,启动Wireshark并且在接口列表中选择接口名, ... 
- java.lang.IllegalStateException: Web app root system property already set to different value
			webAppRootKey是在java web项目的web.xml配置文件中表示项目的唯一标示,在Eclipse调试Web项目时,项目的路径是一个临时路径,不在真正的路径下,可以通过log4j日志的方 ... 
