写一个chrome插件让你的codepen下雨

栏目: Html5 · 发布时间: 7年前

内容简介:使用chrome插件,让插件往网页内注入代码,让下雨的特效显示在背景层中建立一个ok,文件定义完成我们可以开始写代码了。 首先定义一个css样式让我们的canvas背景层永远在最顶部,并且不能响应鼠标事件。

使用chrome插件,让插件往网页内注入代码,让下雨的特效显示在背景层中

:smiling_imp:开始

建立一个 manifest.json ,这个文件是写插件必须建立的规则文件,包涵了注入文件的文件名,资源的文件白名单等等。详细文档

{
  "name": "rain",
  "version": "0.0.1",
  "manifest_version": 2,
  "web_accessible_resources": ["img/*"],
  "content_scripts": [
    {
      "css": ["style.css"],
      "matches": ["http://*/*", "https://*/*"],
      "js": ["index.js"]
    }
  ]
}
复制代码

ok,文件定义完成我们可以开始写代码了。 首先定义一个css样式让我们的canvas背景层永远在最顶部,并且不能响应鼠标事件。

.ouzz__top {
    z-index: 999999999;
    left: 0;
    top: 0;
    mix-blend-mode: multiply;
    position: fixed;
    pointer-events: none;
}
复制代码

然后在js中创建一个canvas标签并设置上面这个css样式

var $canvas = document.createElement("canvas");
$canvas.width = document.body.clientWidth;
$canvas.height = document.body.clientHeight;
$canvas.classList.add("ouzz__top");
document.body.appendChild($canvas);
复制代码

现在你把整个项目添加到chrome插件中,你可以在控制台中看到真的注入了一个canvas节点。当然你现在就有能力在这个canvas中干任意你想做的事情,比如用canvas2d画点什么奇奇怪怪的图形什么的。

:wink:下雨的代码实现

代码是来自 codrops大佬2015年末的项目 令人十分惊叹,在15年末的时候前端就已经玩的这么花哨了,然而我们当时还在jquery的时代,webgl?不存在的。

因为项目作者使用了打包工具,我将里面的源码提取了出来并放在了 index.js 中,省去了各位安装环境编译代码的过程。

这个demo的zip

当然只是做为一个乐子,各位大佬们也可以尽情的修改网页里面的DOM元素。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

哥德尔、艾舍尔、巴赫

哥德尔、艾舍尔、巴赫

[美] 侯世达 / 严勇、刘皓明、莫大伟 / 商务印书馆 / 1997-5 / 88.00元

集异璧-GEB,是数学家哥德尔、版画家艾舍尔、音乐家巴赫三个名字的前缀。《哥德尔、艾舍尔、巴赫书:集异璧之大成》是在英语世界中有极高评价的科普著作,曾获得普利策文学奖。它通过对哥德尔的数理逻辑,艾舍尔的版画和巴赫的音乐三者的综合阐述,引人入胜地介绍了数理逻辑学、可计算理论、人工智能学、语言学、遗传学、音乐、绘画的理论等方面,构思精巧、含义深刻、视野广阔、富于哲学韵味。 中译本前后费时十余年,......一起来看看 《哥德尔、艾舍尔、巴赫》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

在线进制转换器
在线进制转换器

各进制数互转换器

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具