在开源Anys之后,我再次把自己的压箱底作品公开发布。【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。在此之前,我一直的想法是密而不发,毕竟现【本文受版权保护】【原创不易,请尊重版权】在的伸手党实在是太多了,白嫖过去用,一分【访问 www.tangshuang.net 获取更多精彩内容】【访问 www.tangshuang.net 获取更多精彩内容】钱不掏,最后还可能被喷。虽然开源本身是非【未经授权禁止转载】【版权所有】唐霜 www.tangshuang.net常好的,可以促进技术的发展,相互学习,一【关注微信公众号:wwwtangshuangnet】【原创内容,转载请注明出处】起创造出一些有意思的东西出来。然而,由于本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。环境不好,好好的一件事,最后搞的不愉快。【版权所有,侵权必究】【关注微信公众号:wwwtangshuangnet】因此,我现在开源也好,公开发布新东西也好【关注微信公众号:wwwtangshuangnet】【版权所有】唐霜 www.tangshuang.net,也都留了一个心眼,避免卷入这些内耗纷争【原创不易,请尊重版权】【作者:唐霜】。
本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】今天发布的是我在后台用来进行日志回放的播原创内容,盗版必究。【转载请注明来源】放器,取名web-replayer,见名【版权所有】唐霜 www.tangshuang.net【原创不易,请尊重版权】知意。
【未经授权禁止转载】【版权所有,侵权必究】【作者:唐霜】【关注微信公众号:wwwtangshuangnet】 【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】【转载请注明来源】简单讲它就是一个用代码来进行演示的播放器【原创内容,转载请注明出处】【原创不易,请尊重版权】。什么意思呢?就是它让你的代码执行,像播【本文受版权保护】【未经授权禁止转载】放器播放视频一样进行执行。我们使用any转载请注明出处:www.tangshuang.net著作权归作者所有,禁止商业用途转载。s的一个能力,就是录制前端页面的变更,用本文作者:唐霜,转载请注明出处。原创内容,盗版必究。户的行为等等。那么当这些数据进入数据库之本文版权归作者所有,未经授权不得转载。【原创内容,转载请注明出处】后,通过web-replayer,就可以【原创不易,请尊重版权】【原创不易,请尊重版权】把这些日志数据取出来进行回放,这样我们就【本文首发于唐霜的博客】【访问 www.tangshuang.net 获取更多精彩内容】可以在web-replayer中,看到用本文作者:唐霜,转载请注明出处。【转载请注明来源】户的操作,以及当时的情况。那么具体怎么把【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.net一条条日志数据进行播放呢?这里就需要引入原创内容,盗版必究。【关注微信公众号:wwwtangshuangnet】视频里面的“帧”的概念,理论上,1条日志【原创内容,转载请注明出处】原创内容,盗版必究。就是1帧。因此,我们只需要把这些一帧一帧【本文首发于唐霜的博客】【原创不易,请尊重版权】的过程,在web环境下给它呈现出来。怎么原创内容,盗版必究。本文作者:唐霜,转载请注明出处。呈现呢?当然是操作DOM了。因此,我们只【版权所有】唐霜 www.tangshuang.net【本文首发于唐霜的博客】需要提供每一帧,如何操作DOM即可。如何原创内容,盗版必究。【版权所有】唐霜 www.tangshuang.net操作DOM,则是依赖日志本身,当我们看到【本文受版权保护】【本文受版权保护】是一条mousemove的日志时,我们就本文版权归作者所有,未经授权不得转载。未经授权,禁止复制转载。操作DOM里面用来模拟鼠标的元素进行移动转载请注明出处:www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】;当我们看到是一条snapshot的日志本文版权归作者所有,未经授权不得转载。未经授权,禁止复制转载。时,我们就直接用HTML镜像覆盖当前的D【本文受版权保护】【版权所有,侵权必究】OM。这样,我们把对每一条日志对应的DO【版权所有】唐霜 www.tangshuang.net【关注微信公众号:wwwtangshuangnet】M操作都写好之后,我们只需要按照时间的流【版权所有】唐霜 www.tangshuang.net【未经授权禁止转载】逝,不断去执行这些动作即可。这就是web【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】-replayer的底层思路。当然,它自本文版权归作者所有,未经授权不得转载。【作者:唐霜】己还有一些其他方面的设计和考虑,但是核心【本文首发于唐霜的博客】【转载请注明来源】思路就在这里。
【转载请注明来源】未经授权,禁止复制转载。基于这一思路,web-replayer不【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】单单可以用来回放日志,你甚至可以用来实现【版权所有】唐霜 www.tangshuang.net【版权所有,侵权必究】一段视频,因为你可以在帧上操作图片、声音【原创不易,请尊重版权】【未经授权禁止转载】等素材,通过代码来编写这些东西,就可以实【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。现一种神奇的“用代码做视频”的效果。
【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。【作者:唐霜】【本文受版权保护】好了,如果你有兴趣,不妨通过上面的链接去本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshuang.net下载和使用web-replayer。最后本文作者:唐霜,转载请注明出处。【作者:唐霜】,我使用了较为严格的license,主要转载请注明出处:www.tangshuang.net本文作者:唐霜,转载请注明出处。是防止某些不良服务商白嫖。如果你是个人,【原创不易,请尊重版权】【未经授权禁止转载】且不需要对源码进行修改,也不需要部署自己【本文首发于唐霜的博客】【原创内容,转载请注明出处】的服务,那么可以随便使用。
未经授权,禁止复制转载。原创内容,盗版必究。本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net
