作为编程新手,终于动手搭建了属于自己的个人主页!从空白HTML到前端美化,再到GitHub顺利部署上线,最后卡在留言板后端交互,全程既充实又有成就感。这篇文章就来详细分享我的实现过程、代码细节和避坑心得,适合和我一样的前端入门者参考~
首先用HTML构建了页面的核心结构,主要分为3个部分:
关键在于给核心元素添加唯一ID(如contactForm)和类名(如skill-item),为后续CSS美化和JS绑定事件做准备。
CSS主要负责页面样式优化,重点实现了这几个效果:
技能项采用了绿色卡片+圆角设计,hover时不会变形,配合后续JS的放大动画,视觉效果更生动。
JS主要完成了3个核心交互,代码简洁但实用:
代码片段(核心JS逻辑):
// 表单提交功能:仅绑定联系方式表单
const contactForm = document.getElementById('contactForm');
contactForm.addEventListener('submit', function(e) {
e.preventDefault();
alert('留言发送成功!我会尽快回复你~');
contactForm.reset();
});
// 平滑滚动:点击导航栏跳转到对应区块
document.querySelectorAll('nav a').forEach(link => {
link.addEventListener('click', function(e) {
e.preventDefault();
const targetId = this.getAttribute('href');
document.querySelector(targetId).scrollIntoView({
behavior: 'smooth' // 平滑滚动效果
});
});
});
// 技能项hover动画:放大效果
document.querySelectorAll('.skill-item').forEach(item => {
item.addEventListener('mouseover', function() {
this.style.transform = 'scale(1.1)';
this.style.transition = 'transform 0.3s';
});
item.addEventListener('mouseout', function() {
this.style.transform = 'scale(1)';
});
});
前端功能完成后,就想着把项目部署上线,让别人也能访问。选择了GitHub Pages,整个过程意外顺利,没有遇到大问题:
目前最大的卡点是留言板后端交互:前端表单提交后,没有弹出预期的成功提示窗,我调了一下network 其中response直接返回了html页面代码有点懵逼应该是前后端交互有问题也许数据库没连上还不知道,留言内容也无法真正存储。推测可能是接口配置错误、前后端数据格式不匹配或请求方式不当导致,明天会重点排查这几个方向,后续会更新解决方法。
第一次搭建个人主页的过程虽然在后端交互上遇到了卡点,但整体顺利且收获满满。对于前端新手来说,从0到1实现一个可访问的项目,是提升编程兴趣和实战能力的最好方式~ 如果你也在搭建个人主页,欢迎交流经验;如果有解决留言板后端交互的思路,也欢迎在评论区指点!