楼主: 凡哥

[日记] JS代码点滴

[复制链接]
 楼主| 发表于 2024-5-25 22:27 | 显示全部楼层
花简静 发表于 2024-5-25 21:20
这个么大概率可预料

这说不准呢,代码中都是如果否则的
点评
回复

使用道具

 楼主| 发表于 2024-5-25 22:28 | 显示全部楼层
花简静 发表于 2024-5-25 21:20
这天地面积不同
老师的面积肯定比较大

恰恰相反,就10多平米
点评
回复

使用道具

 楼主| 发表于 2024-5-26 14:49 | 显示全部楼层

2024年5月26日 星期日

半圆环文字效果·效果

半圆环文字效果·代码(/p>

<style> #sDiv {     position: relative;     margin: 20px auto;     width: 300px;     height: 300px; } .text {     position: absolute;     font: bold 30px sans-serif; } </style>   <div id="sDiv"></div>   <script>     var txtAr = '秦時明月漢時關'.split('');     var dw = sDiv.offsetWidth, dh = sDiv.offsetHeight;     var r1 = dw / 2 - 10, r2 = dh / 2 - 10;     txtAr.forEach((t,k) => {         var a = 180 / txtAr.length * (k + 0.5) + 180;         // y值 r2 后面的加号变减号凸面朝下         var x = r1 + Math.cos(Math.PI / 180 * a) * r1,             y = r2 + Math.sin(Math.PI / 180 * a) * r2;         var tBox = document.createElement('span');         tBox.className = 'text';         tBox.style.cssText += `             left: ${x}px;             top: ${y}px;             color: #${Math.random().toString(16).substring(2,8)};         `;         tBox.textContent = t;         sDiv.appendChild(tBox);     }); </script>

评分

1

查看全部评分

点评
回复

使用道具

 楼主| 发表于 2024-5-26 15:06 | 显示全部楼层
半圆环文本效果原理

一、CSS支持

(一)文本需要一个父元素以方便控制文字效果在帖子中的定位,同时也方便文本效果布局的计算。要求容器元素(例中是 #sDiv)相对或绝对定位,文本元素(例中是 .text)绝对定位;

(二)容器元素宽高一致得到的是半圆环效果,若希望得到椭圆环效果,宽高尺寸不同即可。

二、JS的实现

(一)将文本拆分为数组,计算坐标系、大圆小圆半径;

(二)遍历文本数组,令其以一定的角度去计算XY坐标:平均角度是 180度除以文本个数是要半圆,加上180是为了把头一个字挪到坐中央,每一个字的角度乘以(k+0.5)是为了头尾两个自垂直对齐;然后使用三角函数算出每一个字的XY坐标并赋值给 left 和 top 属性以定位,再给每一个字去随机16进制前景色,最后将文本元素追加到容器中。

评分

1

查看全部评分

点评
回复

使用道具

发表于 2024-5-26 15:42 | 显示全部楼层
凡哥 发表于 2024-5-25 22:28
恰恰相反,就10多平米

那挺大的
点评
回复

使用道具

发表于 2024-5-26 15:43 | 显示全部楼层
凡哥 发表于 2024-5-26 14:49
#sDiv {
        position: relative;
        margin: 20px auto;

太好了,这是今天守护者的文字说明。。
早上看了一眼正愁看不怎么懂。。
点评
回复

使用道具

 楼主| 发表于 2024-5-26 18:04 | 显示全部楼层
花简静 发表于 2024-5-26 15:43
太好了,这是今天守护者的文字说明。。
早上看了一眼正愁看不怎么懂。。
...

不太好懂是吧
点评
回复

使用道具

 楼主| 发表于 2024-5-26 18:04 | 显示全部楼层


够摆一张床和一张小电脑桌
点评
回复

使用道具

发表于 2024-5-26 21:05 | 显示全部楼层
凡哥 发表于 2024-5-26 18:04
够摆一张床和一张小电脑桌

听着也很惬意的样子。。标配呗
点评
回复

使用道具

 楼主| 发表于 2024-5-26 21:46 | 显示全部楼层
花简静 发表于 2024-5-26 21:05
听着也很惬意的样子。。标配呗

还好,不会有多余的东东,即使有也在床底下
点评
回复

使用道具

您需要登录后才可以回帖 登录 | 中文注册

本版积分规则

手机版|千山论坛 ( 冀ICP备2024055714号 )

GMT+8, 2025-9-15 20:55

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表