1.2023云计算笔试面试题库及答案(持续更新中)
2.你不知道的源码Popperjs上篇
3.Vue实现滑动拼图验证码
4.jspp如何使用阅后即焚?
5.vue2 el-select自定义下拉框
6.Tippy.js - 一款轻量级、功能丰富的分析 JavaScript 提示和弹出库?
2023云计算笔试面试题库及答案(持续更新中)
系统管理 1、Linux中的源码链接分为软链接和硬链接。硬链接不创建新的分析inode,只是源码在源文件上添加了一个文件名,而软链接则创建了一个新的分析如何下载链接源码inode,相当于创建了一个新文件。源码硬链接不能跨分区使用,分析软链接则可以。源码硬链接删除源文件后,分析另一个文件仍可使用,源码而软链接删除源文件后,分析链接文件将无法使用。源码
2、分析编写shell程序运行前需要赋予脚本执行权限,源码即在脚本前加字母x。
3、唯一标识每个用户的有uid和用户名。
4、Linux系统中存放配置文件和子目录的目录是/etc。
5、结束后台进程的命令是kill。
6、在超级用户下显示Linux系统中正在运行的全部进程,应使用命令ps -ef。
7、为脚本程序指定执行权限的命令是chmod +x 脚本。
8、删除文件和目录的命令是rm。
9、移动文件和目录的命令是mv。
、增加一个用户的命令是useradd。
、渗透app源码终止一个前台进程可能用到的命令是kill或+c。
、在使用mkdir命令创建新目录时,在其父目录不存在时应使用-p选项。
、解压缩文件test.tar.gz的命令是tar。
、内存为MB的计算机的交换分区大小通常是MB。
、将光盘CD-ROM(hdc)挂接到/mnt/cdrom目录下的命令是mount /dev/hdc /mnt/cdrom。
、归档和压缩命令正确描述如下:uncompress命令用于解压缩由compress命令生成的后缀为.zip的压缩文件;zip命令和gzip命令可以压缩不同类型的文件;tar命令归档并压缩的文件也可以由gzip命令压缩;tar命令归档后的文件不一定是压缩文件。
、变量FRUIT的操作正确的是:为变量赋值echo $FRUIT显示变量值。
、RAID0、1、5的特点和优点:RAID0提供最佳性能但不存储镜像或校验信息,适用于对数据安全性要求不高的场合;RAID1提供高安全性,但使用率仅为%,适用于数据安全性要求高的场合;RAID5提供性能与数据冗余的最佳折中方案,适用于多读少写的场景。
、在/etc/fstab文件中指定的文件系统加载参数中,noauto参数通常用于CD-ROM。
、Linux文件权限中,第三段表示的是文件所有者所在组的权限。
、在使用mkdir命令创建新目录时,在其父目录不存在时应使用-p选项。
、如何判断出Windows操作系统是curl库源码位还是位?可以在“我的电脑”属性中查看;当前市场中的主流浏览器有Firefox、Chrome、Opera等;Windows系统设置每天下午点自动关机的操作方法是控制面板管理工具计划任务设置每天关机时间;Linux系统关机命令为poweroff,重启命令为reboot,文件夹赋权命令为chmod,挂载分区命令为mount,查看定时任务命令为crontab -l。
、在Windows操作系统和Linux系统中查看MAC地址的方法:Windows中通过网卡状态详细信息查看,Linux中使用命令ip a。
、Linux操作系统新建用户oracle命令为useradd oracle -s /sbin/nologin,设置密码命令为echo 'password' | passwd --stdin oracle。
、Linux操作系统创建目录/datal/database/oracle的命令为mkdir -pv /datal/database/oracle,进入目录的命令为cd /datal/database/oracle。
、Linux操作系统从ip为.0.4.远程主机复制文件的命令为scp .0.4.:/root/script.sh /database/oracle。
、查看Linux操作系统中进程信息的命令为ps aux |grep oracle,杀死PID为的进程命令为kill -9 。
、查看Linux系统磁盘空间装载及占用情况的命令为df -Th,将/dev/sdb文件系统挂载到/data2目录下的命令为mount /dev/sdb /data2。
、输出数字0到中3的倍数的命令为for i in { 1..} do if [[ $(($i % 3)) -eq 0 ]];then echo $i fi done。
、假设服务器具有6块G本地磁盘,单块磁盘IO约为M/S,将6块磁盘做成RAID5级别的实际存储大小为 *(6-2)= G,实际IO约为写的速率m/s *4=m/s,读取数据时校验位的盘需要读取,所以实际读的速率是(6-1)* =m/s。
、云集 源码下载英语翻译:Many of our components require the use of JavaScript to function. Specifically, they require jQuery, Popper.js, and our own JavaScript plugins. Place the following...
你不知道的Popperjs上篇
ElementUI中Tooltip、Select、Cascader、TimePicker等组件是如何实现提示框定位到目标元素的?答案是借助于Popperjs,本文将深入探讨Popperjs的用法和特性。
在ElementUI的源码中首次了解到Popperjs,但不清楚其具体版本。通过对比ElementUI代码与Popperjs 0.5.2版本,发现二者高度相似,因此可以判断ElementUI使用的是0.5.2版本的Popperjs。接下来,我们将从0.5.2版本开始,学习Popperjs的使用。
Popperjs的主要功能是将一个DOM元素定位到目标DOM元素附近,例如Tooltip、Popover、Popconfirm、Dropdown、Select等组件的提示框或弹窗位置。通过`getBoundingClientRect()`方法获取目标元素的位置,设置Popper元素的样式,使得其位于目标元素的右侧。
实现定位的基本思路是获取目标元素的位置,将Popper元素设置为固定定位,并根据目标元素的`right`和`top`值调整自己的位置。考虑到兼容性问题,对于IE9及以下浏览器,需要对`getBoundingClientRect()`方法进行兼容性处理。
除了基本功能实现,Popperjs还提供了丰富的扩展使用场景,如在不同方位定位Popper元素。通过配置属性`placement`,可以指定Popper元素的4321的源码定位方位,如`top-start`、`top-end`、`bottom-start`等。
为了实现不同方位的定位,Popperjs内部定义了`baseOffsets`数组,用于存储不同方位的默认位置。在计算最终位置时,根据`placement`值和`start`、`end`属性进行定位。此外,还需要考虑`margin`值对元素大小的影响,通过`getOuterSizes()`函数计算Popper元素的实际大小。
实现定位的代码中还包含了对`Window.getComputedStyle()`方法的使用,以获取元素的样式属性值。`_getOffsets`函数用于获取参考元素和Popper元素的位置和尺寸,计算最终的定位信息。在定位过程中,`_getOffsets`函数中使用了`shift`函数调整位置,确保`right`和`bottom`值的正确计算。
为了提升定位性能,可以利用CSS3硬件加速。通过`transform`属性实现元素的平移,避免页面重排和重绘。同时,需要对计算值进行四舍五入处理,以避免字体模糊。考虑到浏览器兼容性问题,需要添加获取当前浏览器支持的前缀属性。
最后,将定位功能封装在`applyStyle`函数中,提供了一套完整的定位解决方案。此外,Popperjs还支持滚动容器、保持DOM上下文、兼容性、可配置性、避免裁剪和溢出、快速翻转等特性。
本文仅介绍了Popperjs的扩展使用场景和CSS3硬件加速的基本概念。下篇将深入探讨保留DOM上下文、处理滚动条、裁剪和溢出、快速翻转等场景,以及如何进行自定义扩展。敬请期待。
Vue实现滑动拼图验证码
本文将深入浅出地为您介绍如何在Vue框架中实现滑动拼图验证码的功能。首先,我们来探讨一下为什么我们会选择实现这样一个功能。
实现滑动验证码在前端的复杂度和深度,相较于文字验证码,如的验证码,更考验前端开发者的技术实力。
实现滑动验证码,主要涉及以下知识点:
1、弹窗功能实现
2、基于元素的弹窗定位
3、元素拖动机制
4、使用canvas进行绘图
5、验证码逻辑基础
下面我们分步骤详细介绍滑动拼图验证码的实现。
步骤一:弹窗与弹窗组件的集成
利用Vue的组件化特性,我们选择使用elementUI的el-popover组件来快速实现弹窗功能。对于弹窗组件的定制与集成,如基于popper.js实现自定义弹窗定位,可以进一步提高用户体验与交互效果。
步骤二:基础结构搭建
HTML结构是实现验证码的基础,这里将不再赘述。
步骤三:canvas绘制
实现验证码的关键步骤之一在于canvas绘制。
1、绘制外部img
通过canvas绘制背景,确保的清晰与可读性。
2、绘制滑块部分
具体实现时,会绘制一个与背景有差异的,即滑块,通过canvas的arc参数实现圆形或者不规则图形的绘制,从而形成扣掉的和裁剪出来的效果。
3、元素拖动实现
利用事件监听(mousedown、mousemove)实现元素跟随鼠标点击后的滑动,核心在于记录点击坐标,并在移动过程中动态更新元素的位置。
步骤四:完整页面代码实现
整合以上各部分功能,最终得到完整的滑动拼图验证码页面代码。代码中涉及到的逻辑与细节,如事件处理、函数封装等,将确保验证码功能的稳定与高效。
jspp如何使用阅后即焚?
首先引入了Bootstrap样式、jQuery库和Popper.js库。在页面中创建了一个文本框和一个发送按钮,当用户点击发送按钮时,获取文本框中的内容,使用jQuery动态创建一个弹窗,并将文本框中的内容显示在弹窗中。然后使用setTimeout函数在5秒钟后关闭弹窗,
vue2 el-select自定义下拉框
在Vue2中,使用el-select组件进行开发时,为了自定义下拉框的外观和功能,我们常常需要调整相关属性以满足特定需求。其中,popper-append-to-body="false" 和 popper-class="option" 是两个关键属性,它们在自定义下拉框时发挥着重要作用。
首先,我们来说说 popper-append-to-body="false" 属性。在默认情况下,el-select 组件中的下拉选项是由 popper.js 库生成的,并且会附着到最近的祖先元素上。然而,在某些特定情况下,我们可能希望将这些下拉选项独立渲染到 body 元素中,以避免与页面其他元素产生冲突或布局问题。通过设置 popper-append-to-body="false",我们能够让下拉选项脱离特定的容器,从而更加灵活地进行布局和样式调整。
接下来,我们再来看看 popper-class="option" 属性。此属性允许我们自定义下拉选项的CSS类名,进而实现对下拉框内部元素的更精细控制。通过为下拉选项设置特定的类名,我们可以轻松地应用或调整样式,例如改变选项的字体、颜色、背景、边框等,以符合项目整体的设计风格或交互需求。这样一来,不仅能够提升用户体验,还能确保界面的一致性和美观度。
综上所述,通过合理设置 popper-append-to-body="false" 和 popper-class="option",我们不仅能够解决在自定义下拉框时可能遇到的布局问题,还能够实现对下拉选项的深度定制,从而在Vue2项目中构建出更加个性化和功能丰富的el-select组件。
Tippy.js - 一款轻量级、功能丰富的 JavaScript 提示和弹出库?
在提升用户体验的交互式开发中,Tippy.js作为一款备受青睐的轻量级JavaScript库,为我们提供了丰富的提示和弹出组件解决方案。由Popper.js驱动,Tippy.js支持多种输入方式,遵循WAI-ARIA标准,并允许高度自定义,通过智能定位确保内容可见性。
要入门使用,首先需安装Tippy.js,可通过直接引入JS文件或包管理器安装。接下来,通过简单的示例演示创建工具提示,如在按钮上添加悬浮文字"Hello, Tippy.js!"。
Tippy.js的核心功能包括智能定位选项、响应式HTML内容、丰富的定制选项以及多样化的事件交互。它支持主题化,内置和自定义样式,且具备插件系统,可扩展其功能。
对比Popper.js,Tippy.js更侧重于简单易用和轻量级,适合对控制要求不高但寻求快速集成的开发者。而Popper.js则提供了更大的灵活性和配置选项,适合对定制性有更高要求的开发者。
总的来说,Tippy.js是增强Web应用用户体验的强大工具,无论是新手还是经验者,都能在其简洁的API和灵活的定制中找到适合自己的用法。
Popper.js:ElementUI 中采用弹出,提示框库,好用的没朋友。
在Element UI中,Popper.js扮演着核心角色,为Tooltip、Select、Cascader、TimePicker等组件的弹出提示框定位提供了强大支持,被赞誉为"好用到没朋友"的库。
Popper.js是一款专为创建弹出式组件和工具提示设计的JavaScript库,它的核心任务是精确计算和管理弹出元素的位置,确保它们能精准地与目标元素相邻或定位。它通过创建一个虚拟的"popper"元素来操作,支持下拉菜单、工具提示、弹出框等多种组件的实现。
Popper.js的强大之处在于其丰富的配置选项和API,允许开发者自由定制弹出元素的位置、偏移、边界规则等,支持多种触发方式和动画效果。作为独立库,它能够无缝融入React、Vue等主流前端框架中,提升网站和应用的交互体验。
使用Popper.js的步骤包括引入库,创建目标元素和弹出元素,初始化Popper实例并配置参数。详细的使用指南和API文档可在Popper.js官方页面找到。通过这些操作,开发者可以轻松地在Element UI组件中实现弹出提示的精准定位和定制化设计。