Files
FamilyBook/assets/js/app.js
T

28 lines
994 B
JavaScript
Raw Normal View History

/* 家书 · 前端小助手(无框架,无构建步骤) */
(function () {
'use strict';
// 头像选好后即时预览,别等上传完才知道选错了
var fileInput = document.getElementById('avatar');
if (fileInput && window.FileReader) {
fileInput.addEventListener('change', function () {
var f = this.files && this.files[0];
if (!f) { return; }
var img = document.getElementById('avatar-preview');
if (!img) { return; }
var reader = new FileReader();
reader.onload = function (ev) { img.src = ev.target.result; };
reader.readAsDataURL(f);
});
}
// 头像加载失败时换回内置剪影 —— 保证任何时候都不会出现破图
Array.prototype.forEach.call(document.querySelectorAll('img'), function (img) {
img.addEventListener('error', function () {
if (img.dataset.fallbackDone) { return; }
img.dataset.fallbackDone = '1';
img.src = '/assets/avatar-default.svg';
});
});
})();