Tominysun

前言

如题,这个JavaScript特效是建立在jQuery的基础上的。
所以你在使用这个特效前切记引入jQuery文件。否则会提示“jQuery未定义”的。

价值观.jpg

正文

好啦,废话不多说。直接上代码!

var a_idx = 0;
jQuery(document).ready(function($) {
    $("body").click(function(e) {
        var a = new Array("富强", "民主", "文明", "和谐", "自由", "平等", "公正" ,"法治", "爱国", "敬业", "诚信", "友善");
        var $i = $("<span/>").text(a[a_idx]);
        a_idx = (a_idx + 1) % a.length;
        var x = e.pageX,
        y = e.pageY;
        $i.css({
            "z-index": 999,
            "top": y - 20,
            "left": x,
            "position": "absolute",
            "font-weight": "bold",
            "color": "#00FF66"
        });
        $("body").append($i);
        $i.animate({
            "top": y - 180,
            "opacity": 0
        },
        1500,
        function() {
            $i.remove();
        });
    });
});

“Array()”中的内容可以自行修改,保持"1","2"这样的规则即可。至于CSS的部分,大家可以自由发挥了!

高级说明

如果你的站点使用了InstantClick或Pjax等无刷新加载的手段。下面的代码就很重要了:

InstantClick

第一步

创建jiazhiguan.js,内容如下:

function jiazhiguan() {
    //手动省略
}

PS:其实与上面的代码唯一的区别就是封装了jiazhiguan()这么个函数,方便引用。

第二步

在你的站点</body>标签前引入如下代码

<script src="jiazhiguan.js" data-no-instant></script>
<script>jiazhiguan()</script>

说明:

data-no-instant目的是InstantClick无刷新加载时不重复引入脚本,浪费服务器流量。
jiazhiguan()目的是引入脚本后执行函数,产生预期效果。

Pjax

第一步

与InstantClick第一步相同。

第二步

在你的Pjax控制脚本中的pjax:complete部分添加对应函数。

$(document).on('pjax:complete', function() {
  jiazhiguan()
});

哦,对了,同样也要在你的站点</body>标签前引入如下代码啊。

<script src="jiazhiguan.js"></script>

结语

效果嘛,在本站就可以看到了。
对了,这个代码由于来源广泛,我实在找不到原始出处了。何况我还补充了一大堆呢,就算原创了。#(手动滑稽)

仅有一条评论

  1. Tominysun
    Tominysun 作者君 10Chrome 67

    读过本文的人,如果你有什么好的css创意,可以分享在评论区域哦。 @(hehe)

添加新评论