JS实现默认头像填充
程序员文章站
2022-03-08 16:50:15
...
这次给大家带来JS实现默认头像填充,JS实现默认头像填充的注意事项有哪些,下面就是实战案例,一起来看一下。
在我的不少项目中,都有缺省头像的问题。为了保持个性和方便辨认,会给没有头像的用户填充带名字的头像。
代码分享:https://github.com/joaner/namedavatar
调用简单
如果上传头像不存在,直接会在 <img> 标签上填充默认头像,用户名从alt获取:
<img alt="李连杰" width="32" style="border-radius: 100%"> <img src="./invalid.jpg" alt="Tom Hanks" width="40"> <script> requirejs('namedavatar', function(namedavatar){ namedavatar.config({ nameType: 'lastName', }) namedavatar.setImgs(document.querySelectorAll('img[alt]'), 'alt') }) </script>
如果<img src="./invalid.jpg">资源无效,namedavatar.setImgs()就会填充alt里的用户名,src变成这样
<img id="avatar1" src="data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32"><rect fill="#9C27B0" x="0" y="0" width="100%" height="100%"></rect><text fill="#FFF" x="50%" y="50%" text-anchor="middle" alignment-baseline="central" font-size="16" font-family="Verdana, Geneva, sans-serif">Hanks</text></svg>">
相比其它类似项目
首先对中文姓名的支持更好
直接在<img>标签上填充data URI,绿色无添加,应用成本更低
基于<svg>,没有用<canvas>渲染,性能也会好一点
支持的配置项更多,比如可以定义显示哪部分,或是随机背景颜色
也支持Vue.js的 directive 指令方式
import { directive } from 'namedavatar/vue' // register as directive Vue.directive('avatar', directive); // in vue template <template> <img v-avatar="'Tom Hanks'" width="36"/> </template>
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
webpack无法通过IP地址访问localhost怎么办?
以上就是JS实现默认头像填充的详细内容,更多请关注其它相关文章!
上一篇: 禁止页面缓存有哪些方法
推荐阅读
-
在WordPress中实现评论头像的自定义默认和延迟加载
-
vue.js+elementUI实现点击左右箭头切换头像功能(类似轮播图效果)
-
php+js iframe实现上传头像界面无跳转
-
Django+JS 实现点击头像即可更改头像的方法示例
-
Vue.js 实现地址管理页面思路详解(地址添加、编辑、删除和设置默认地址)
-
JS实现的模仿QQ头像资料卡显示与隐藏效果
-
国庆节到了,利用JS实现一个生成国庆风头像的小工具 详解实现过程
-
JS实现延迟隐藏功能的方法(类似QQ头像鼠标放上展示信息)
-
利用JS实现一个同Excel表现的智能填充算法
-
php+js iframe实现上传头像界面无跳转_PHP教程