自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Web 开发&软件开发

来自一名Web开发人员和软件工程师的博客

  • 博客(621)
  • 收藏
  • 关注

翻译 designmode_designMode

designMode 偶尔我偶然发现我不相信的API或浏览器设置。 可以在大量的String.prototype属性(例如bold , italics ,甚至blink看到此类示例,这些属性将给定的字符串文本包装在其代表性HTML标签中。 奇怪 最近引起我注意的是document.designMode API:一个on|off开关,其作用几乎类似于整个文档的contentEdible属...

2020-08-11 04:30:42 399

翻译 javascript_JavaScript waitForTime

JavaScript waitForTime 我为Firefox DevTools中的新功能编写了许多测试。 我们有数百个“ mochitests”,它们可以打开浏览器并执行诸如单击,键入和其他用户操作之类的综合操作。 之前,我曾写过关于waitForever ,它实际上是在不锁定浏览器的情况下停止了后续操作。 我喜欢的另一个实用程序是waitForTime ,这是一个异步JavaScri...

2020-08-11 04:19:53 434

翻译 java 图像加载_图像延迟加载

图像延迟加载 延迟加载图像是一种流行的做法,有十年的历史,这是有充分理由的:图像通常是给定网页上下载量最大的,避免卸载从未见过的图像可以节省用户带宽。 每个JavaScript框架中都有一些用于延迟加载图像的插件,或者您可以使用Intersection Observer API ,但是由于已经成为一种常见的做法,因此可能应该有一个浏览器API来容纳它……而Chrome浏览器正在实现该目的。 让...

2020-08-11 03:48:43 460

翻译 qr码是二维码码_如何创建QR码

如何创建二维码 QR码并不是每个人都可以喝的,但是我很喜欢它们。 如果我发现自己想记住的东西或以后再查看,尤其是在旅途中,快速拍照非常容易-比尝试记住URL容易得多,比在微型键盘上键入它要快得多。 如果您需要为客户或您自己生成QR码,那么有一个非常不错JavaScript项目: node-qrcode 。 让我们看看可用于创建QR码的不同wys和输出格式! 首先安装库: yarn ...

2020-08-11 02:46:46 4241

翻译 浏览器广告拦截_如何检测广告拦截器

如何检测广告拦截器 互联网的潜规则之一是,大多数内容都是“免费的” ...以牺牲广告和跟踪器的网页为代价。 在早期的互联网时代,这并不是一个大问题,但是跟踪器和广告已经变得非常具有侵略性,并且毫无侵略性,以至于您几乎需要使用广告拦截器浏览器扩展程序。 Ad Blocker Plus广受欢迎,像Brave这样的浏览器以围绕广告屏蔽为中心。 通常,我会去某个站点查看禁用我的广告拦截器的模式...

2020-08-10 23:15:23 2512

翻译 覆盖window.alert

覆盖window.alert 大卫·沃尔什 ( David Walsh)着 2020年2月10日 2 多年来,Web开发人员只能通过alert("{str}")调用获得反馈。 如今,我们拥有Web控制台,但在极少数情况下,我们没有控制台,并且alert调用是我们在给定时间访问值的唯一窗口。 一个问题:如果alert潜入生产代码中,则您的网站看起来...

2020-08-10 20:11:04 183

翻译 post 重复参数_参数名称重复

参数名称重复 大卫·沃尔什 ( David Walsh)着 2020年1月6日 通常,我们会覆盖或猴子补丁函数,并且在许多情况下,有些参数我们不太在意。 这些参数的常见做法是将_用作参数名称-这是“这并不重要”的普遍接受的惯例。 我开始考虑多个无用的参数,如果为了简化而可以使用相同的名称,则可以。 那么,当您多次使用相同的参数名称时会发生什么?...

2020-08-10 19:31:00 403

翻译 惰性初始化_惰性对象初始化

惰性对象初始化 大卫·沃尔什 ( David Walsh)着 2020年2月17日 1个 用JavaScript和HTML编写的Firefox DevTools基础代码是一个复杂的应用程序。 由于工作的复杂性和繁琐的工作量,DevTools团队已尽其所能来尽可能少地加载。 此外,该团队还有一个在需要时可以懒惰地导入和初始化对象的系统。 我花了一些时间...

2020-08-10 19:01:36 359

翻译 webpack 不压缩代码_如何不使用webpack缩小源代码

如何不使用webpack缩小源代码 webpack JavaScript实用程序已经占领了现代JavaScript领域,以至于很难成为一个JavaScript开发人员并且不使用它。 JavaScript构建实用程序是它们隐式地执行最佳实践的关键,例如最小化代码,缓存等。 我最近正在调试捆绑的webpack应用程序,很快就知道,唯一的方法是调试实际源代码,而不是最小化的代码。 杜伊 ...

2020-08-10 16:15:24 4906

翻译 查看全局安装包_停止全局安装软件包

停止全局安装软件包 如今,大多数前端项目将涉及某种NPM软件包。 有时,在浏览这些软件包的文档时,我会看到建议安装这样的软件包。 yarn global add <package> 或像这样。 npm install --global <package> 在这两个示例中,软件包都是全局安装的。 这意味着您可以从系统上的任何目录运行<package>命...

2020-08-10 16:06:12 205

翻译 jQuery Wookmark

jQuery Wookmark 当您访问Pinterest时遇到的第一件事是“哇,这些列的宽度相同,并且照片被剪裁得恰到好处。” 基本的Web用户可能对此一无所知,但是作为一名开发人员,我可以欣赏在服务器和客户端上创建该设计所付出的努力。 这就是为什么我爱上了Wookmark的原因, Wookmark是一个jQuery插件,可与图像创建相同的一致布局效果。 让我向您展示如何使用Wo...

2020-08-10 11:21:01 154

翻译 jquery城市选择控件_jQuery选择插件

jQuery选择插件 毫无疑问,我最不喜欢的form元素是SELECT元素。 该元素几乎无法样式化,在各个平台上看起来都不同,具有不一致的值访问权限,而由multi multiple=true导致的灾难就是灾难。 不用说,每当开发人员付出更多努力为这些问题提供解决方案时,我的脸上都会露出灿烂的笑容。 Harvest最近发布了SELECT增强器Chosen,它提供了自动建议,搜索,样式设置以...

2020-08-10 05:22:27 341

翻译 fighter_zzh_使用CSS动画和JavaScript构建Street Fighter演示

使用CSS动画和JavaScript构建Street Fighter演示 我最近从Simurai学习了一个很酷的技术,内容涉及如何使用CSS3动画的steps()属性为PNG精灵设置动画。 该技术的主要思想是“重新创建”某种动画GIF,但要带有PNG子画面的图块。 就像我认识的每个人一样,我从小就在《街头霸王》中玩过,当我看到这个 ……猜猜脑子里弹出了什么? Check out th...

2020-08-10 03:21:07 226

翻译 怎么获取jquery版本_获取jQuery版本

获取jQuery版本 许多JavaScript框架在其主要对象上提供了version属性,从而提供了有关该框架的重要信息。 但是,主要的jQuery对象不提供此属性,因此开发人员需要做更多的工作才能获得该版本信息。 这是获取给定jQuery脚本的jQuery版本号的方法! jQuery JavaScript jQuery版本位于jQuery.fn : var v = jQuery.fn....

2020-08-10 02:22:35 695

翻译 创建一个出色的,由CSS驱动的Sprited Firefox动画

创建出色的,由CSS驱动的Sprited Firefox动画 Mozilla最近在世界移动通信大会上正式宣布了Firefox OS及其合作伙伴,我对此感到非常兴奋。 Firefox OS将会改变发展中国家人民的生活,希望在美国也能自己成名。 合作伙伴网站还发布了一个很棒的Firefox动画,让我无法错过这个机会,让我向您展示它的创建方式! 观看演示 在开始编写代码之前,让我们...

2020-08-10 00:38:20 129

翻译 添加对象然后push_然后在对象上

然后在对象上 承诺是JavaScript开发的启示,它使我们可以享受异步处理并避免回调地狱。 许多新的API(例如Battery API , Cache API和其他API)都使用promise API。 您可能不知道的一个事实是,您可以向任何对象添加then方法,使其类似于Promise! 让我们用then方法创建一个通用对象,该方法接受一个resolve函数作为其参数: j = ...

2020-08-09 23:00:41 367

翻译 设置超链接不可选泽红_可选链接

可选链接 对于JavaScript语言在过去几年中进行的所有改进,例如散布运算符 , 默认参数值和箭头函数 ,我仍然希望看到一些实现的功能。 一种这样的功能是可选链接。 可选的链接允许开发人员在不触发错误的情况下引用可能存在或不存在的对象属性。 以以下示例为例: const person = { name: "David", skills: { javascript:...

2020-08-09 21:09:05 135

翻译 是的,element组件库_检测Element是否是Web组件

检测Element是否是Web组件 从Web组件成为规范开始,我就一直在提倡它们,主要是受Dojo Toolkit的dijit框架启发。 赋予一流JavaScript小部件(而不是一堆DIV和模板)总是最有意义的。 既然Web组件已经存在,并且像Ionic这样的强大框架都基于它们,我想发现如何使用JavaScript检测Web组件,而不是常规HTML元素。 事实证明,它比您想象的要容易得多...

2020-08-09 19:59:20 152

翻译 javascript速度_使用JavaScript设置视频播放速度

使用JavaScript设置视频播放速度 我喜欢媒体已经从自定义插件(Flash ... gross)转移到基本HTML <video>和<audio>元素。 例如,将这些媒体源视为另一个元素,使我们可以使用CSS过滤器来调整显示。 我们需要对ffmpeg或插件做的越少,越好。 我一直注意到,许多视频网站都实现了调整视频播放速度的功能,如果您试图更快地通过一些体...

2020-08-09 19:50:03 5240

翻译 手机浏览器远程调试_如何调试远程浏览器

如何调试远程浏览器 当错误仅在远程浏览器中弹出时,这非常令人沮丧。 关于该用户,该设备或该环境的某些信息有所不同,但我不知道是什么! 当然,我不能在本地开发计算机上重新创建它。 TrackJS团队提出了一种很酷的方法来连接和调试这些我们称为RemoteJS的远程浏览器。 RemoteJS是一项免费服务,您可以在其中将简化JavaScript调试器附加到远程浏览器。 调试器提供了一个远程...

2020-08-09 18:42:02 633

翻译 类中静态代码块和静态属性值_承诺和静态值

承诺和静态值 尽管事实上异步是现代JavaScript模式,但Async确实可以使我们的编程工作流程陷入困境。 尽管异步/等待会有所帮助,但有时对于使单个函数返回值(无论该值是否存在还是需要Promise来获取)的方式有些困惑。 要记住的关键是,声明为async函数会自动返回Promise,因此您无需使用Promise.resolve(content)显式地返回现有内容: async...

2020-08-09 17:13:09 135

翻译 图像文本检测的标注工具_如何检测图像中的文本

如何检测图像中的文本 图像是不使用文本进行交流的一种很好的方式,但是经常使用/滥用图像在社交媒体和广告中传播文本。 图像中的文本也存在可访问性问题。 事实是,出于多种原因,能够检测图像文件中的文本很重要。 tesseract OCR是一个令人惊叹的开源工具,它可以检测图像中的文本! 我建议使用Homebrew安装tesseract: brew install tesseract 要...

2020-08-09 16:34:54 757

翻译 javascript 代理_带存储JavaScript代理

带存储JavaScript代理 JavaScript Proxy API在JavaScript中提供了很多“魔术”,使您可以将任何对象用作别名,从而可以进行验证,格式化和错误抛出。 您是否知道还可以将Proxy API用作对不同类型的存储的抽象? 无论是sessionStorage , localStorage还是IndexedDB,您都可以使用代理使该API更易于使用! Proxy ...

2020-08-09 16:15:08 96

翻译 使用JavaScript进行反向查询

使用JavaScript进行反向查询 我一直很喜欢探索正则表达式,因为它们是学校从未教过的那些技能之一-您需要即时捡起它们,弄乱并固定它们。 正则表达式功能非常强大,它们的一种功能称为反向引用,它实际上使您可以在同一正则表达式中使用匹配项。 解释反向引用的最简单方法是一个简单的目标:使用正则表达式模拟解构。 采取以下代码段: const body = document.blah.bo...

2020-08-09 16:05:13 813

翻译 mootools_带有jQuery,MooTools和Dojo的JSONP

带有jQuery,MooTools和Dojo的JSONP 我们都知道AJAX的最大局限性是不允许跨域请求。 但是,我们也知道,使用JSONP可以绕过该规则。 JSONP是SCRIPT标签注入的过程,它引用跨域URL并提供提供程序将调用的回调函数(在您的页面上),以便您可以处理结果。 让我们看一下如何使用jQuery,MooTools和Dojo Toolkit处理JSONP。 对于我们的示...

2020-08-09 13:04:42 117

翻译 mootools_使用CSS3和MooTools创建旋转,褪色图标

使用CSS3和MooTools创建旋转,褪色图标 我最近的博客重新设计的目标是实践我所讲的内容。 增加一些微妙的天赋。 我实现此目标的方法之一是使用CSS3动画来更改个人资料图标(RSS,GitHub等)的显示,但是我不想完全放弃CSS动画。 我添加了一些MooTools以使图标的初始显示位置和旋转随机化。 让我向您展示如何使用CSS3和MooTools创建动态的旋转元素。 观看演示 ...

2020-08-09 12:01:46 126

翻译 npm 查看npm安装地址_慢速测量以测量NPM安装时间

慢速测量以测量NPM安装时间 快速将依赖项添加到npm项目的能力是一种诅咒-诅咒是您通常无法控制那些可用的依赖项(即,左手的情况),并且有可能使您的应用程序膨胀甚至增加项目下载时间。 事实是,我们应该对所依赖的东西非常小心。 我最近发现了一个很棒的实用程序,用于测量依赖项下载时间和对依赖项的依赖项: slow-deps 。 首先安装慢速下降: npm install -g slow-...

2020-08-09 10:52:44 734

翻译 mootools_使用CSS3和MooTools或jQuery创建爆炸徽标

使用CSS3和MooTools或jQuery创建爆炸徽标 当MooTools的贡献者和moo4q的创建者Ryan Florence首次向我展示他出色CSS动画文章时 ,我感到非常震惊。 他爆炸性的文字效果是CSS3和少量JavaScript的强大示例。 我想在我的新博客重新设计中实现这种效果,但它要流行一些,所以我写了一些MooTools代码来拍摄静态图像,并使其成为动画,爆炸性的杰作...

2020-08-09 07:52:20 193

翻译 mootools_使用MooTools,jQuery或Dojo创建一个Twitter AJAX按钮

使用MooTools,jQuery或Dojo创建一个Twitter AJAX按钮 没有什么比有效地使用CSS和JavaScript增强用户体验的微妙,光滑的网站窗口小部件更好的了。 当然,像这样的窗口小部件需要花费很多小时才能完成,但是用不了多长时间的用户保留和嗡嗡声就可以使这种努力得到回报。 我喜欢的小部件之一是Twitter的“关注”按钮。 让我向您展示如何使用三种流行JavaSc...

2020-08-09 06:02:11 100

翻译 jquery复制_复制jQuery主页工具提示

复制jQuery主页工具提示 jQuery主页具有类似工具提示的和的效果,如下所示: 复制此效果所需的jQuery数量几乎为零; 实际上,CSS比jQuery代码更多! 让我们探讨如何复制jQuery的工具提示效果。 观看演示 HTML 总体结构包括一个包装DIV元素,列表中列出了每个工具提示链接: <div id="jq-intro" class="jq-...

2020-08-09 04:13:45 91

翻译 中断缓冲竞争_如何在不中断的情况下提供流畅的播放(缓冲)

如何在不中断的情况下提供流畅的播放(缓冲) 有没有比没有互联网更糟糕的一件事:不可靠的互联网。 我感到沮丧的是,一页快速加载,然后一页非常慢(如果有的话),然后混合无法处理。 就像...把您的设备扔到整个房间令人沮丧。 在尝试播放媒体时,尤其是视频时,这种缓慢感最为明显,视频在视觉上显得比较僵硬,声音被切断并且让您感到愤怒。 上周,我写了有关HTML5视频最佳做法和Cloudina...

2020-08-09 02:15:01 382

翻译 观察者改变被观察者的状态_调整观察者大小

调整观察者大小 创建反应式和响应式的网站以前被认为是高级的,但是响应性是成功的网站和应用程序的必要条件。 我们添加了媒体查询, matchMedia和许多其他API,以帮助开发人员ResizeObserver响应速度,现在我们得到了一个新的ResizeObserver 。 借助Resize Observer API,我们可以监视各个元素的大小! 使用ResizeObserver 要...

2020-08-09 01:35:57 381

翻译 mootools完成特效_使用MooTools,jQuery和Dojo II完成常见任务

使用MooTools,jQuery和Dojo II完成常见任务 我对JavaScript框架的热爱无止境。 不幸的是,太多的开发人员坚持使用一个框架却没有花时间学习其他框架。 您知道的框架越多,您将成为一名更好的程序员,您就会赚到更多的钱。 让我向您展示如何使用三个JavaScript框架完成更多任务:MooTools,jQuery和Dojo。 遍历元素集合 Moo工具 $$('...

2020-08-09 00:24:32 115

翻译 mootools完成特效_使用MooTools,jQuery和Dojo III完成常见任务

使用MooTools,jQuery和Dojo III完成常见任务 我对JavaScript框架的热爱无止境。 不幸的是,太多的开发人员坚持使用一个框架却没有花时间学习其他框架。 您知道的框架越多,您将成为一名更好的程序员,您就会赚到更多的钱。 让我向您展示如何使用三个JavaScript框架完成更多任务:MooTools,jQuery和Dojo。 计算元素尺寸和位置 在尝试设置DO...

2020-08-09 00:15:21 156

翻译 7个有用JavaScript技巧

7个有用JavaScript技巧 就像所有其他编程语言一样,JavaScript具有许多技巧来完成简单和困难的任务。 一些技巧已广为人知,而另一些则足以使您震惊。 让我们来看看您今天可以开始使用的七个JavaScript技巧! 获取数组的唯一值 获取唯一值数组可能比您想象的要容易: var j = [...new Set([1, 2, 3, 3])]>> [1, 2...

2020-08-08 22:25:32 117

翻译 jquery css 旋转_使用CSS3和jQuery创建旋转,褪色图标

使用CSS3和jQuery创建旋转,褪色图标 上周,我发表了一篇颇受欢迎的博客文章,标题为“ 使用CSS3和MooTools创建旋转,褪色图标” 。 文章详细介绍了如何利用CSS3的转换和不透明度属性以及神奇的MooTools JavaScript框架来创建旋转,褪色,动画图标。 由于受欢迎的要求,我用另一个受欢迎JavaScript工具包jQuery复制了这种效果。 观看演示 ...

2020-08-08 22:05:11 199

翻译 object.values_流Object.values(…)

流Object.values(…) JavaScript键入实用程序(例如Flow和TypeScript)已在各种规模JavaScript应用程序中流行。 正如我在“ 脚本和样式秀”中键入播客所提到的那样,键入是隐式实现文档和验证的好方法。 Flow并不总是那么容易完美,但是Object.values对我来说是一个痛点。 使用Flow时, Object.values可能触发以下错误: ...

2020-08-08 21:17:54 245

翻译 mongodb 数组化简_使用数组化简

使用数组化简 每个专门研究任何编程语言的开发人员都会告诉您,有一个强大的工具提供了该语言,他们很少使用并且希望他们了解更多。 对我来说,它是Array.prototype.reduce 。 我非常喜欢其他Array方法,例如map , filter和find ,但是reduce是我知道功能强大但从未真正使用过的方法。 直到我重构了一些Firefox DevTools Debugger代...

2020-08-08 21:07:39 117

翻译 IP地理位置API

IP地理位置API 检测来自用户的地理位置信息可为您提供巨大的优势:改进的转换,更好的细分和分析,以及提供更多相关的内容。 有许多付费服务可以提供地理位置信息,但是它们往往成本太高或缺乏有价值的信息。 IP Geolocation API给我留下了深刻的印象, IP Geolocation API是一个免费的Geolocation API ,它提供了诸如语言和货币代码之类的额外详细信息! ...

2020-08-08 20:57:31 492

翻译 php array 递归_递归Array.flat

递归Array.flat 在Array.prototype.flat的早期阶段就进行了很多讨论,仅从名称开始。 许多开发人员更喜欢使用flatten这个名称,但其规范与MooTools的实现有所不同。 MooTools会递归地展平数组,但是新的官flat实现默认为展平一个级别。 Array.prototype.flat的当前实现是: [1, 2, [3], [[4]]].flat(/...

2020-08-08 18:47:53 203

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除