简单解决particles.js做页面背景时与鼠标无交互的问题

最终效果: 先看一下最终效果图
最终效果
先说一下particles.js,他的实现方式是通过id绑定元素,并在该元素内部创建一个canvas标签,来实现粒子效果,详细的我就不多说了。

大概就是这么个原理,canvas既然是一个标签,那么他就有宽高,这样的话,他就会在某个位置显示出来,而并不能做到全屏显示,这个问题很容易解决,就是设置canvas标签的position为fixed,这样就可以相对于屏幕固定,然后就是改变他的层级关系,让他置于底层,这样他就不会影响上层元素。
这也很简单就是设置z-index值为-1。

但是!但是!但是!!!问题来了!!

问题说明: z-index:-1 之后原本与鼠标交互的效果没啦!只是单纯的一个背景。(我感觉不太好,别人的都有效果,我的为啥没有?)

解决办法: 让canvas标签的层级处于最上层第二的位置,让其他元素处于最上层。
可能不太容易懂,我这边有一个3D效果图。
3D效果图
颜色为#00eaff(我看着像蓝色)的那一部分就是canvas标签的层级位置。

我的处理方式: 将canvas标签的z-index设置为9,将上面的那些div的z-index设置为了10,还有就是将canvas标签的position设置为fixed,将上面的那些div的position设置为relative,这样原来的布局就不会乱了

canvas标签

	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9; /* 其实不设置也没问题(我的页面是没问题,其他的就不知道了) */
	opacity: 0.7;

其他div(这里是指那些必须显示在最上层的div,越精确越好)

	/* 直接添加在原来的样式里就行 */
	position: relative;
	z-index: 10;

最后总结: 其实也没啥总结的,原理很简单,也不是啥很复杂很高深的东西,我在网上也搜了相关的解决方式,但是很多博主都没有给出实质性的解决思路,之后我就自己琢磨,就在一个深夜,我突然想到这个方式。完美解决!!😃😃😃

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值