【浪漫 罗盘时钟 Js、css实现(附源代码) 美化版本】,前端面试必问的HashMap

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
img

正文

left: 50%;

top: 50%;

transition: width 0.3s ease-in-out 0s;

overflow: visible;

}

.clock>hr.active:before{

content: ‘’;

display: block;

width: 5px;

height: 5px;

border-radius: 50%;

background-color: yellow;

top: -2px;

left: 0;

position: absolute;

}

clock.js

$.fn.extend({

/* 时钟 */

clock:function () {

var HL={};

HL. e l = el= el=(this);

HL.ZHCNArr=[‘零’,‘一’,‘二’,‘三’,‘四’,‘五’,‘六’,‘七’,‘八’,‘九’,‘十’];

/* 转为简体中文 */

HL.changeZHCN=function (value) {

/* 小于 10 */

if(value<10){

return this.ZHCNArr[value];

}

var val=value.toString(),str=‘’;

/* 整 10 */

if(val.charAt(1)==0){

if(val.charAt(0)!=1){

str=this.ZHCNArr[parseInt(val.charAt(0),10)];

}

str+=this.ZHCNArr[10];

return str;

}

/* 小于 20 */

if(value<20){

str=this.ZHCNArr[10]+this.ZHCNArr[parseInt(val.charAt(1),10)];

return str;

}

str=this.ZHCNArr[parseInt(val.charAt(0),10)]+this.ZHCNArr[10]+this.ZHCNArr[parseInt(val.charAt(1),10)];

return str;

};

/* 设置日期 */

HL.setDate=function(){

var yearStr=‘’,monthStr=‘’,dayStr=‘’;

var y=this.dateInfo.year.toString();

for(var i=0;i<y.length;i++){

yearStr+=this.changeZHCN(parseInt(y.charAt(i),10));

}

monthStr=this.changeZHCN(this.dateInfo.month);

dayStr=this.changeZHCN(this.dateInfo.day);

if(this.els){

this.els.date.html(yearStr+‘年’+monthStr+‘月’+dayStr+‘日’);

}else {

this.$el.append(‘

  • ’+(yearStr+‘年’+monthStr+‘月’+dayStr+‘日’)+‘
  • ’);

    }

    };

    /* 设置小时 */

    HL.setHour=function(){

    var str=‘’,rotateArr=[];

    for(var i=1;i<=24;i++){

    rotateArr.push(r=360/24*(i-1)*-1);

    str+=‘

    ’+(this.changeZHCN(i))+‘时
    ’;

    }

    this.$el.append(‘

  • ’+str+‘
  • ’);

    setTimeout(function () {

    HL.$el.find(“.on-hour>div”).each(function (index,el) {

    $(el).css({

    “transform”:“rotate(”+rotateArr[index]+“deg)”

    })

    });

    setTimeout(function () {

    HL.setMinute();

    },300);

    },100)

    };

    /* 设置分钟 */

    HL.setMinute=function(){

    var str=‘’,rotateArr=[];

    for(var i=1;i<=60;i++){

    rotateArr.push(360/60*(i-1)*-1);

    str+=‘

    ’+(this.changeZHCN(i))+‘分
    ’;

    }

    this.$el.append(‘

  • ’+str+‘
  • ’);

    setTimeout(function () {

    HL.$el.find(“.on-minute>div”).each(function (index,el) {

    $(el).css({

    “transform”:“rotate(”+rotateArr[index]+“deg)”

    })

    });

    setTimeout(function () {

    HL.setSec();

    },300)

    },100);

    };

    /* 设置秒 */

    HL.setSec=function(){

    var str=‘’,rotateArr=[];

    for(var i=1;i<=60;i++){

    rotateArr.push(360/60*(i-1)*-1);

    str+=‘

    ’+(this.changeZHCN(i))+‘秒
    ’;

    }

    this.$el.append(‘

  • ’+str+‘
  • ’);

    setTimeout(function () {

    HL.$el.find(“.on-sec>div”).each(function (index,el) {

    $(el).css({

    “transform”:“rotate(”+rotateArr[index]+“deg)”

    })

    });

    setTimeout(function () {

    HL.initRotate();

    },1300);

    },100);

    };

    /* 初始化滚动位置 */

    HL.initRotate=function(){

    this.rotateInfo={

    “h”:360/24*(this.dateInfo.hour-1),

    “m”:360/60*(this.dateInfo.minute-1),

    “s”:360/60*(this.dateInfo.sec-1),

    };

    this.els={

    “date”:this.$el.find(“.date”),

    “hour”:this.$el.find(“.on-hour”),

    “minute”:this.$el.find(“.on-minute”),

    “sec”:this.$el.find(“.on-sec”)

    };

    this.els.hour.css({

    “transform”:“rotate(”+this.rotateInfo.h+“deg)”

    });

    this.els.minute.css({

    “transform”:“rotate(”+this.rotateInfo.m+“deg)”

    });

    this.els.sec.css({

    “transform”:“rotate(”+this.rotateInfo.s+“deg)”

    });

    setTimeout(function () {

    HL.$el.find(“hr”).addClass(“active”).css({

    “width”:“49%”

    });

    HL.start();

    },300);

    };

    /* 启动 */

    HL.start=function(){

    setTimeout(function () {

    if(HL.dateInfo.sec<=60){

    HL.dateInfo.sec++;

    var r=360/60*(HL.dateInfo.sec-1);

    HL.els.sec.css({

    “transform”:“rotate(”+r+“deg)”

    });

    HL.minuteAdd();

    HL.start();

    }else {

    console.log(HL.dateInfo.sec)

    }

    },1000);

    };

    /* 分钟数增加 */

    HL.minuteAdd=function(){

    if(HL.dateInfo.sec==60+1){

    setTimeout(function () {

    HL.els.sec.css({

    “transform”:“rotate(0deg)”,

    “transition-duration”: “0s”

    });

    HL.dateInfo.sec=1;

    setTimeout(function () {

    HL.els.sec.attr(“style”,“transform:rotate(0deg)”);

    },100);

    HL.dateInfo.minute++;

    var r=360/60*(HL.dateInfo.minute-1);

    HL.els.minute.css({

    “transform”:“rotate(”+r+“deg)”

    });

    HL.hourAdd();

    },300);

    }

    };

    /* 小时数增加 */

    HL.hourAdd=function(){

    if(HL.dateInfo.minute==60+1){

    setTimeout(function () {

    HL.els.minute.css({

    “transform”:“rotate(0deg)”,

    “transition-duration”: “0s”

    });

    HL.dateInfo.minute=1;

    setTimeout(function () {

    紧跟潮流

    大前端和全栈是以后前端的一个趋势,懂后端的前端,懂各端的前端更加具有竞争力,以后可以往这个方向靠拢。

    这边整理了一个对标“阿里 50W”年薪企业高级前端工程师成长路线,由于图片太大仅展示一小部分

    网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

    需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
    img

    一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
    {

    紧跟潮流

    大前端和全栈是以后前端的一个趋势,懂后端的前端,懂各端的前端更加具有竞争力,以后可以往这个方向靠拢。

    这边整理了一个对标“阿里 50W”年薪企业高级前端工程师成长路线,由于图片太大仅展示一小部分

    网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

    需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
    [外链图片转存中…(img-992pjx86-1713218439001)]

    一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/547191.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vue简单使用三(class样式绑定)

目录 对象的形式绑定&#xff1a; 数组的形式绑定&#xff1a; 内联样式Style 对象的形式绑定&#xff1a; 可以看到class中有两个值 数组的形式绑定&#xff1a; 可以看到也有两个值 内联样式Style style样式设置成功 完整代码&#xff1a; <!DOCTYPE html> <html…

EasyImage2.0 简单图床开源 多功能 简单易用图床系统源码

内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 支持API 支持仅登录后上传 支持设置图片质量 支持压缩图片大小 支持文字/图片水印 支持设置图片指定宽/高 支持上传图片转换为指定格式 支持限制最低宽度/高度上传 支持上传其他文件格…

攻防世界---misc---适合作为桌面

1.下载附件&#xff0c;是一张图片 2.用Stegsolve打开&#xff0c;打开图片一直点击下面的“>”&#xff0c;知道看到二维码 3.用QR Research解码&#xff0c;得到一串十六进制 4.用winhex转为pyc文件&#xff0c;先把十六进制内容存放在.txt文本中&#xff0c;然后用winhex…

(处理流)转换流与对象流

1.字符编码与解码. (1). 字符编码 : 将字符&#xff0c;字符串&#xff0c;字符数组------&#xff1e; 字节&#xff0c;字节数组. (2). 字节&#xff0c;字节数组------&#xff1e;字符&#xff0c;字符串&#xff0c;字符数组. 如果希望程序在读取文件时(也就是解码)不…

OpenHarmony开发实例:【分布式游戏鉴权应用】

1.介绍 本文将介绍分布式游戏鉴权应用。操作过程为&#xff1a; 设备A点击“开始游戏”按钮&#xff0c;开始搜索周边设备。 设备A显示周边设备&#xff0c;点击设备B并发起连接请求&#xff0c;远程拉起设备B的FA。 设备B收到请求后&#xff0c;选择是否允许“开启游戏”。…

《R语言与农业数据统计分析及建模》学习——数据读入

一、工作目录 # 获取当前工作目录 getwd()# 改变工作目录为指定路径下的文件夹 # 注意工作目录的表达方式 setwd(D:/R_class) setwd(D:\\R_class) 二、文件路径 读取文件中的数据首先要确定文件路径&#xff0c;如果文件不在工作目录下&#xff0c;则必须使用绝对路径 1、文…

STL —— stack、queue

博主首页&#xff1a; 有趣的中国人 专栏首页&#xff1a; C专栏 目录 1. 容器适配器 2. 栈的模拟实现 3. 队列的模拟实现 4. 双端队列deque 4.1 deque的原理介绍 4.2 deque的缺陷 4.3 为什么选择deque作为stack和queue的底层默认容器 本篇文章主要讲解 stack 和 queue …

MDK-ARM Keil5.38 下载安装环境搭建

一、keil软件介绍 KEIL是公司的名称&#xff0c;有时候也指KEIL公司的所有软件开发工具&#xff0c;目前2005年Keil由ARM公司收购&#xff0c;成为ARM的公司之一。 MDK&#xff08;Microcontroller Development Kit&#xff09; 也称MDK-ARM、KEIL MDK、RealView MDK、KEIL For…

IDEA 设置类注释模板作者、日期、描述等信息(推荐标准!)

idea注释模版配置 idea作为越来越多程序员使用的开发工具&#xff0c;平时的代码注释也非常的关键&#xff0c;类上注释和方法上注释每次换电脑或者新同事入职都要统一修改&#xff0c;找了网上好多教程都写的乱七八糟的啥都有&#xff0c;为方便统一就自己写一个操作方法&…

【yolov5小技巧(2)】---将yolov5中的特征图以热力图的方式进行可视化

文章目录 &#x1f680;&#x1f680;&#x1f680;前言一、1️⃣ 将特征图可视化的文章CFPNet二、2️⃣yolov5自带的特征图可视化工具三、3️⃣如何将特征图转换成热力图 &#x1f440;&#x1f389;&#x1f4dc;系列文章目录 【yolov5小技巧(1)】—可视化并统计目标检测中的…

Leetcode二叉树刷题

给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。 示例 1&#xff1a; 输入&#xff1a;root [1,2,2,3,4,4,3] 输出&#xff1a;true public boolean isSymmetric(TreeNode root) {if(rootnull)return true;return compare(root.left,root.right);}public boole…

Python学习笔记(37)——用xlwings库生成excel

老规矩先pip入xlwings库 STEP1:下载xlwings库 windowsr>>cmd>>pip install xlwings (如果需要不同版本可以到pypi上搜&#xff09; STEP2:完成EXCEL初级创建 请打开您的编写软件~~~~~&#xff08;小编的显示结果为PYCHARM编写的&#xff0c;因为颜色标注好看(…

113.PyQt5_QtPrintSupport_打印操作

我 的 个 人 主 页&#xff1a;&#x1f449;&#x1f449; 失心疯的个人主页 &#x1f448;&#x1f448; 入 门 教 程 推 荐 &#xff1a;&#x1f449;&#x1f449; Python零基础入门教程合集 &#x1f448;&#x1f448; 虚 拟 环 境 搭 建 &#xff1a;&#x1f449;&…

光电传感器的工作原理简介

光电传感器是一种利用光电效应将光信号转换为电信号的传感器。 工作原理 光照射&#xff1a;光电传感器通过光源&#xff08;如LED或激光&#xff09;照射在其表面。 光电转换&#xff1a;光线与传感器材料发生光电反应&#xff0c;产生电信号。这种转换过程涉及到光子与电子的…

论文解读 --- 《针对PowerShell脚本的有效轻量级去混淆和语义感知攻击检测》

开篇 今天我们继续来解读安全行业优秀论文&#xff0c;通过学习他人的智慧成果&#xff0c;可以不断丰富我们的安全视野&#xff0c;使用它山之石来破解自身的难题。 这次要解读的论文为《Effective and Light-Weight Deobfuscation and Semantic-Aware Attack Detection for…

解决宝塔的FTP无法使用被动模式

问题&#xff1a;宝塔安装完ftp管理软件之后&#xff0c;无法使用被动模式连接 解决&#xff1a; 提示&#xff1a; 如果还是不行&#xff0c;那么要看看防火墙和安全组有没有放行被动模式的端口&#xff0c;宝塔安装的pure-ftpd软件的被动模式端口默认是39000至400…

使用稳压管和三极管射极输出器电路驱动PMOS

当电源电压大于PMOS 管的最大栅源电源时&#xff0c;不能直接把栅极拉到地&#xff0c;需要一点特殊的电路来限制栅极驱动电压。有的地方是用电阻分压器做的&#xff0c;比如这种&#xff1a; NPN 三极管导通时&#xff0c;MOS 管栅极电压是两个电阻中间的电压。这种设计最大的…

“华为杯“华南理工大学程序设计竞赛 L-再一道好题

题目 #include<bits/stdc.h> using namespace std; #define int long long #define pb push_back #define fi first #define se second const int maxn 1e6 5; const int inf 1e9 5;using namespace std;int n, m;void solve(){int res 0;int q;string s;int k;cin …

华为ensp中nat server 公网访问内网服务器

作者主页&#xff1a;点击&#xff01; ENSP专栏&#xff1a;点击&#xff01; 创作时间&#xff1a;2024年4月15日17点30分 NAT服务器是一种在网络边界设备上配置的服务&#xff0c;它允许外部网络的用户访问内部网络中的服务或主机&#xff0c;同时隐藏了内部网络的真实IP地…

Eigen笔记2:矩阵拼接

直接贴代码吧&#xff0c;使用的MatrixXd 和<<运算符&#xff1a; int main(int argc, char *argv[]) {Eigen::MatrixXd B(2, 2);B << 1, 2,3, 4;Eigen::MatrixXd C(2, 2);C << 5, 6,7, 8;Eigen::MatrixXd D(2, 2);D << 9, 10,11, 12;Eigen::MatrixXd…