美文网首页经验乱炖
lolSix周年活动页面

lolSix周年活动页面

作者: _小田 | 来源:发表于2018-03-19 13:41 被阅读9次

小白文采不好,大佬们看见了多多指点,自己的代码可能也有很多"毒瘤"希望大佬们指正,蟹蟹~~

在掘金看到了一个大佬发的 LOL六周年里的按钮动画 的文章

效果非常 very nice 也很有意思

于是进 lolSix周年活动页面 看看效果 只剩下哇塞!哇塞!哇塞!

于是自己决定试试,参考首页写一部分效果,于是... 有图有真相

效果图

ps: demo demo仓库

如果觉得不错的话,可以给个star鼓励一下 蟹蟹~~

两个动画都是通过改变class来完成的效果,简单粗暴 赞(≧▽≦)/\


(function () {
    // 定义所需要的变量
    let navBtns = $('#nav-ul i')
    let navBtnli = $('#nav-ul li')
    let navhs = $('#nav li')
    let navhem = $('#nav em')
    // 两个改变class的计数变量
    let numLi = {
        numi: 1,
        numh: 1
    }
    // 清楚定时器的变量
    let time = null

    // 鼠标经过和移除 触发run方法
    navBtnli.on('mouseover', function () {
        let navI = $(this).children('i')
        run(navI, 'ans2_btn', numLi.numi)
    })
    navBtnli.on('mouseout', function () {
        let target = $(this).children('i')
        stop(target)
    })

    navhs.on('mouseover', function () {
        $(this).removeClass('ligb')
        let navh = $(this).children('em')
        run(navh, 'ans_btn', numLi.numh)
    })

    navhs.on('mouseout', function () {
        let target = $(this).children('em')
        stop(target)
        $(this).addClass('ligb')
    })

    // 接受三个参数, 需要改变的对象, 需要改变的名字, 需要改变的数
    function run(obj, name, num) {
        // js定时器setTimeout 无法调用局部变量的解决办法
        function runs() {
            if (num > 25) {
                num = 1
            }
            obj.css('display', 'block')
            obj.removeClass()
            obj.addClass(nameNav + num)
            num++
            time = setTimeout(function () {
                clearTimeout(time)
                runs()
            }, 30)
        }
        runs()
    }
    // 停止动画
    function stop(target) {
        clearTimeout(time)
        target.css('display', 'none')
    }

})()

html结构请参考 官方页面或者我的仓库里面的html文件

然后就是中间的 flash 动画,使用了html object标签,

但是我在Ubuntu上面chrome测试的时候正常没有问题,(自己在Ubuntu开虚拟机上win测试,IE11,360有效果,chrome,firefox就没有了,懵逼 希望有大佬可以跟我提点一二)

但是在Firefox测试的时候不会显示,

于是用了兼容的处理方法,先贴一个通用的处理方法(自己也研究了一会儿,第一次接触2333~~),

    // 这是活动页面的解决办法
    // 大家也可以看看这个文档 https://github.com/swfobject/swfobject 
    // An open source Javascript framework for detecting the Adobe Flash Player plugin and embedding Flash (swf) files.
    // 自己英文比较垃圾 chrome 翻译过来就是
    // 用于检测Adobe Flash Player插件并嵌入Flash(swf)文件的开源Javascript框架。

    // 这个文件可以引用腾讯的,也可以下载,也可以新建文件复制粘贴
    <script src="./public/js/swfobject.js"></script>
    <script src="index.swf"></script>
    <script>
        var params = {
            scale: "noscale",
            wmode: "transparent",
            align: "middle",
            allowFullscreen: "true",
            allowScriptAccess: "always",
            FlashVars: "timer=1480586966506&endtimer=1481094000000"
        }
        swfobject.embedSWF("index.swf", "mymovie", "100%", "670", "8.0.0","expressInstall.swf", null, params);
    </script>

虽然解决了引入swf动画的兼容问题,但是在firefox上面根本不显示啊 23333~~~

大佬的解决办法非常简单 请继续细心观看文章!

// 提前在html结构上面写一个静态的替代图片,然后隐藏
<div class="logob">英雄联盟6周年盛典</div>

// 这里是swf文件的位置
<div id="mymovie" class="mymovie"></div>

// 通过判断 来显示静态图片(虽然没有了swf动画,但是总不不显示比较好 赞 学习了~!)
 setTimeout(function () {
    if ($(".mymovie").length > 0) {
        $(".logob").css({
            "display": "block"
        });
    }
}, 1000)

大概就是跌么多了! 如果有不对的地方希望大佬们多多指正,

也可以加小白我交流2333~~ Qq: 952822399

自己大二也快要毕业了QAQ,希望被大佬们带走!!!

相关文章

  • lolSix周年活动页面

    小白文采不好,大佬们看见了多多指点,自己的代码可能也有很多"毒瘤"希望大佬们指正,蟹蟹~~ 在掘金看到了一个大佬发...

  • webpack4学习系列(三):进阶

    一、多页面开发 如果公司的产品需要做很多活动,一大堆促销活动,邀请活动,周年活动,每个活动之间没有关联,每个活动是...

  • 活动页面

    引入rem 1.将rem.js文件放置在index.html文件同级下2.在index.html页面内引用 活动页...

  • 周年庆典活动方案要从哪些方面去考虑

    周年庆典活动已经成为企业必不可少的文化节日之一,而周年庆典活动方案则为活动的顺利举行保驾护航。周年庆典活动方案指的...

  • Android之路(二)

    第二章 活动 在我的理解中活动的概念就是页面,一个app可以有主页面和其他页面,即主活动和其他活动,每个活动有自己...

  • 活动页面接口

    1.获取活动列表 请求(get)ctx+"activity/getActivityList.json" 参数are...

  • 活动页面设计

    每逢节假日各种运营推广活动如星云般涌现,在众多活动中如何让你的活动页设计脱颖而出,在最短时间内hold住用户脚步。...

  • 周年庆典晚会策划的流程是怎样的?——趴比库活动策划平台

    周年庆典晚会作为宴会活动中的一种,活动初期要成立专门的活动小组开会讨论,确定活动方案,最后落地执行,周年庆典晚会策...

  • 无标题文章

    浙大120周年西迁80周年 湄潭系列活动

  • 【微店学习】第19期

    【课程简介】 我想抱团互推,但怎样才能找到一起互推的店主呢?不会创建活动页面?活动页面杂乱难看?创建好了活动页面但...

网友评论

    本文标题:lolSix周年活动页面

    本文链接:https://www.haomeiwen.com/subject/dfxpqftx.html