首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

js个人简介的代码

当然,以下是一个简单的JavaScript个人简介示例代码。这个示例将创建一个包含姓名、职位、技能和联系方式的个人简介卡片,并将其动态添加到网页中。

代码语言:txt
复制
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>个人简介</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            background-color: #f4f4f4;
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
        }
        .profile-card {
            background-color: #fff;
            padding: 20px;
            border-radius: 10px;
            box-shadow: 0 4px 6px rgba(0,0,0,0.1);
            width: 300px;
        }
        .profile-card h2 {
            margin-top: 0;
            color: #333;
        }
        .skills {
            list-style-type: none;
            padding: 0;
        }
        .skills li {
            background-color: #e0e0e0;
            margin: 5px 0;
            padding: 8px;
            border-radius: 5px;
        }
        .contact a {
            display: block;
            margin: 5px 0;
            color: #007BFF;
            text-decoration: none;
        }
        .contact a:hover {
            text-decoration: underline;
        }
    </style>
</head>
<body>

<div id="profile"></div>

<script>
    // 个人简介数据
    const profileData = {
        name: "张三",
        position: "前端开发工程师",
        skills: ["HTML", "CSS", "JavaScript", "React", "Node.js"],
        contact: {
            email: "zhangsan@example.com",
            github: "https://github.com/zhangsan",
            linkedin: "https://linkedin.com/in/zhangsan"
        }
    };

    // 创建个人简介卡片
    const profileContainer = document.getElementById('profile');

    const card = document.createElement('div');
    card.className = 'profile-card';

    const name = document.createElement('h2');
    name.textContent = profileData.name;

    const position = document.createElement('p');
    position.textContent = profileData.position;

    const skillsList = document.createElement('ul');
    skillsList.className = 'skills';
    profileData.skills.forEach(skill => {
        const skillItem = document.createElement('li');
        skillItem.textContent = skill;
        skillsList.appendChild(skillItem);
    });

    const contactSection = document.createElement('div');
    contactSection.className = 'contact';
    for (const [key, value] of Object.entries(profileData.contact)) {
        const link = document.createElement('a');
        link.href = key === 'email' ? `mailto:${value}` : value;
        link.textContent = key.charAt(0).toUpperCase() + key.slice(1);
        contactSection.appendChild(link);
    }

    // 组装卡片内容
    card.appendChild(name);
    card.appendChild(position);
    card.appendChild(skillsList);
    card.appendChild(contactSection);

    // 添加到页面
    profileContainer.appendChild(card);
</script>

</body>
</html>

代码说明

  1. HTML结构:
    • 一个空的<div>元素,ID为profile,用于动态插入个人简介卡片。
  • CSS样式:
    • 设置页面背景颜色、字体、居中对齐等基本样式。
    • 定义个人简介卡片的样式,包括背景色、内边距、圆角和阴影效果。
    • 样式化技能列表和联系方式链接。
  • JavaScript部分:
    • 定义一个profileData对象,包含姓名、职位、技能和联系方式等信息。
    • 使用DOM操作动态创建个人简介卡片的各个部分:
      • 创建标题、职位段落、技能列表和联系方式链接。
      • 将这些元素组装到卡片容器中。
    • 最后,将整个卡片添加到页面的profile容器中。

应用场景

这个示例适用于创建静态或动态的个人简介页面,可以进一步扩展以包含更多信息,如教育背景、项目经验、作品集链接等。通过使用JavaScript动态生成内容,可以方便地管理和更新个人简介信息,而无需手动修改HTML结构。

可能遇到的问题及解决方法

  1. 样式不生效:
    • 确保CSS选择器正确,并且没有拼写错误。
    • 检查CSS是否被正确引入,尤其是在使用外部样式表时。
  • JavaScript错误:
    • 使用浏览器的开发者工具(通常按F12)查看控制台日志,定位错误信息。
    • 确保所有变量和对象属性名称正确,避免拼写错误。
  • 动态内容未显示:
    • 确认JavaScript代码在DOM加载完成后执行,可以将脚本放在</body>之前,或者使用DOMContentLoaded事件监听器。
    • 检查数据对象profileData是否正确定义,并包含预期的数据。

通过以上代码和说明,你可以创建一个简洁美观的个人简介页面,并根据需要进行自定义和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 调试JS代码

    记录下近期对JS代码的调试过程 性能分析 启动程序之后,打开google浏览器对应页面,按F12或者Ctrl+Shift+I进入 开发者工具页面 目前主要使用的功能有: Performance....性能评估,比如我想看下页面刷新的性能瓶颈所在,先点击 按钮,然后进行页面操作,当页面刷新完成,再点击 按钮,则会生成性能报告,可以看到资源消耗,JS代码的执行逻辑等 Sources....性能报告页面的 部分,可以通过点击色块查看其所在的js代码文件,如 点击则会跳转到 功能栏,有了源文件就可以进行断点调试;这里注意部分js文件是压缩后的文件,建议手动修改程序替换成可读性更强的原始代码文件...查看程序的打印输出,比如我想知道某个函数的执行时间,可以在js代码中进行修改 当js代码执行之后,可以在console输出中看到foo的执行时间 Network....[2,1,4,10…]的 颜色数组 转换成RGB表示,js代码使用for循环进行操作,也就是线性复杂度,计算耗时随数据量的增大而线性增大 通过debug观察发现颜色数组会有不少重复的数值,而同样的输入会导致相同的输出

    19K10

    js代码规范

    前言 在js的代码开发中,我简单的总结出了以下规则,后面会陆续补充并且对规范进行分类。...js代码建议保存到后缀名.js的文件中 js代码不建议放在html中,原因有:不能被缓存,会增大网页文件的大小,可维护性不高,会影响页面的加载。...js吧任何表达式都当一条简单语句,会导致一些隐性的错误。如果自己没加分号,那么js解释器会自动添加分号,按照自己能读懂的断句。 9.2 复合语句 也称为语句块,被包在大括号内部。...比如对象 var obj={} ;var arr=[] eval eval是最容易混乱使用的js函数,他可以执行内部入参的js函数或者表达式,可以直接解析变量。不建议使用 。...判断是否相等时候 采用=== 判断包括类型的相等 21. 尽量使用语法严格模式 消除代码之中的不友好;代码运行更快 ;保证运行的安全 ;为新版本的js做好铺垫。 22.

    8.9K30

    JS代码混淆 | js 逆向系列

    -g uglifyjs example.js -c -m --mangle-props -c 代码压缩 -m 代码混淆 --mangle-props 混淆属性名 -b 美化显示 // 原代码 const...,可能部分在线平台也是可以完成的 https://www.sojson.com/jsjiemi.html 3. eval packer https://tool.chinaz.com/js.aspx /...JShaman https://www.jshaman.com/ JShaman 是国内公司开发的js代码加密商业产品 免费版可以直接使用 // 原代码 const person = { age...,通过数组、字典等各种形式存储、拼接、替换等,最终进行还原,这里面没有利用到复杂的语法以及js 语言本身的特性,所以我们一点点解开也学不到什么; 这个代码就不一样了,我们一步一步解开它,尝试去学习其中的思路...JavaScript 中函数只能有一个返回值,你就说这玩意如果没学过 js谁能想到吧!

    2.6K10

    Js 逆向进阶 | 浅谈 Js 代码保护

    2.Js2x http://ty2y.com/obfuscate/#how-to-use ? 这个跟上面那个多态变异是一样的。...js vmp 最强的,这种方案其实也是很好理解的,比如对于一个js代码来说,我们只用js操作写一个基于栈的解释器,然后对于本身要保护的js进行虚拟化,定义一堆自定义操作,这个时候其实还是比较弱,因为全部是...js 写的暴漏在攻击者面前; 第二阶段: 这个时候的一个大致的想法是我们可以把虚拟机解释器这部分用C/c++来实现,通过Emscripten 处理为webasembly,这个时候的分析难度就会增加很多...结合服务端针对多样性来增加难度; 5.做移动安全代码保护的传统厂商们 这里就不评论分析了,因为他们可能重点在APP相关的dex、so以及手游相关的文件上;6.其他 像其他的一些大厂比如阿里这种肯定做了jsVMP...总结 对于 js 这种语言来说,由于语言本身的特殊性,一定的保护是非常必要的,再结合浏览器本身的发展,为了性能会在编译上做处理,引入本地层的东西,比如谷歌的 V8 ,火狐的 asm.js 在安全性上:业务上更多的结合服务端动态特性以及客户端强大的静态代码保护的设计会达到一个比较好的效果

    27.8K20

    js代码混淆工具?

    什么是js混淆工具?js混淆工具是一种能够将js代码转换成难以阅读和理解的代码的工具,通常用于保护js代码的安全性和版权,防止被恶意修改或盗用。...代码转换:将代码中的一些语法或者表达方式转换成另一种等效的形式,增加代码的多样性和难度。为什么要使用js混淆工具?...js混淆工具的主要目的是为了保护js代码不被轻易地反编译或者破解,提高js代码的安全性和稳定性。...由于js代码是运行在浏览器端的,任何人都可以通过查看网页源码或者使用开发者工具来查看和修改js代码,这给js代码带来了很大的风险。...总结js混淆工具是一种能够保护js代码安全性和版权的工具,通过将代码转换成难以阅读和理解的形式来实现。在选择js混淆工具时,需要根据自己的需求和使用场景选择。

    78500

    JS代码之混淆

    js 代码中混淆与还原的对抗,而所使用的技术便是 AST,通过 AST 能很轻松的将 js 源代码混淆成难以辨别的代码。...即便你的程序也许在运行时报错,但都不会影响 AST 解析(除非语法错误),在 js 逆向中,通过静态分析还原出相对容易看的出的代码有对于代码分析,而对于一些需要知道某一变量执行后的结果静态分析是做不到的...parser 与 generator​ 前者用于将 js 代码解析成 AST,后者则是将 AST 转为 js 代码,两者的具体参数可通过 babel 手册查看,这就不做过多介绍了。...个人推荐这种写法,因为能有 js 的代码提示,如果是 TypeScript 效果也一样。...js 代码进行 ast Explorer 查看树结构,理清所要构造的代码节点(很重要) 2、找到最顶层的结果,如 variableDeclaration,查看该代码所对应的参数 3、进一步的分析内层节点结构

    22K10

    JS代码之还原

    基于 Babel 对 JS 代码进行混淆与还原操作的网站 JS 代码混淆与还原 (kuizuo.cn) 还原前言​ AST 仅仅只是静态分析,但可以将还原出来的代码替换原来的代码,以便更好的动态分析找出相关点...在还原时,并不是所有的代码都能还原成一眼就识破代码执行逻辑的,ast 也并非万能,如果你拥有强大的 js 逆向能力,有时候动态调试甚至比 AST 静态分析来的事半功倍。...贴上代码 git 地址 js-de-obfuscator/example/deobfuscator/cx 注:该 js 文件是通过工具JavaScript Obfuscator Tool进行混淆处理的。...运行还原后的代码​ 最终整个还原后的代码可以在newCode.js中查看,但到目前为止还没有测试还原后的代码到底能否正常运行,或者是替换节点导致语法错误,所有就需要将还原后的代码与混淆过的代码替换运行这样才能测试的出来...JS 混淆与还原的网站​ 针对上述还原操作其实还不够明显,于是就编写了一个在线对 JS 代码混淆与还原的网站(主要针对还原)– JS 代码混淆与还原 (kuizuo.cn) 其实也就是对上述的还原代码进行封装成工具使用

    19.3K20

    js代码小优化

    也就是使用@ResponseBody罢了 恩,没错,改吧,页面直接用的freemarker取值也是有为题了,毕竟ajax后台model,put();的值是取不出来的。...解决完之后毕竟登陆注册小窗口是一个抽取出来的html,那个页面需要直接include进来罢了。 OK。我自我感觉考虑的挺全面,还在ajax 的success后写了个死的回调方法。...自作聪明过头了,老大一看,就说你这写的不够完善,还需要优化下。 蒙了,啥玩意。 回调方法时写死的。需要灵活支配。...在不影响源代码的基础上可以进行修改。要不就新增 。。。...() 到位 之前跟我交接的一个同事人家前端页面还用的vue.js 默认触发一个click事件可以通过 $("#id").trigger("click"); 怎么触发v-on:click $("#id

    2.4K20
    领券