所谓以图换字,即直接使用一张图片,没有文字。我们知道,蜘蛛爬取时是不会获取图片上的内容的,但是如果是添加上文字,即便使用一些字体,也可能达不到图片的显示效果。如何将用户体验与SEO优化相兼容呢,我们可以使用text-in…
标签:前端开发
React学习笔记(三)-- 组件的生命周期
摘要 React中的组件类似于状态机,每个组件都被设计成为在其生命周期过程中输出稳定、语义化的标签。React组件的生命周期大致可以分为:创建时,存在期及销毁时。为了更好的控制每个生命周期环节,React提供了对应的钩子…
JS模式 之通用模式(译)
原文 http://shichuan.github.io/javascript-patterns/ 函数定义 创建匿名函数,并将其赋给一个变量。 不建议使用定义全局函数。这会污染全局变量。 条件 使用if和else的模式…
详解generator(二)——异步、委托和并发
异步迭代生成器 先看一个例子,用于控制异步流程的暂停阻塞 function foo(url){ ajax(`api/${url}`,(err,data)=>{ if(err){ it.throw(err) // 抛…
使用WebUploader解决安卓微信浏览器上传图片中遇到的bug
摘自个人博客:走啊走的记录,欢迎点击查看,效果更佳! 微信浏览器上传图片bug的原因 微信在新版本中采用的是自己的X5内核浏览器,而在较老的版本中还有可能是安卓的原生浏览器。具体的环境我也不太了解,但是经过实际多台安卓机…
js笔记四十二之sort深入研究
数组排序 var ary = [12,23,14,34,23,1,14,16,26,2]; // ary.sort(); // 只按第一位数字进行排序(只能排10以内的数字) ary.sort(function(a,b)…
CSS学习笔记三——CSS选择器
选择器 分类 * .class #id div div,p div p div>p div+p [attribute] [attirbute=‘123′] [attribute~=‘123’] [att…
使用reduce实现map
刚刚接触的时候觉得很简单的问题,但真正下手实现的时候,发现牵扯出很多的东西。你真的完全了解Array.prototype.map吗 map相关的概念 遍历数组的每一项,并执行回调函数的操作,返回一个对每一项进行操作后的新…
JS变量提升
废话不多说,直接看以下例子,代码地址: 函数声明和函数表达式 a() function a(){ console.log('a'); } b() var b = function (){ console.log('b')…
CSS进阶探讨-层叠特殊性及应用技巧
前言 本文共两个部分, 前面简要介绍CSS层叠特殊性的基本概念, 之后会探讨一些本人在项目中遇到的关于层叠的问题, 以及个人归纳的一些应用技巧. 关于层叠特殊性的详细文档可参考MDN (CSS层叠, Cascade an…
【翻译】你知道何时使用或者不使用ES6箭头函数吗?
首先不得不承认,箭头函数是ES6中非常受欢迎的一个功能,它提出了一种新的书写方式来简洁的定义函数。 举例说明: ES5: function timesTwo(params) { return params * 2; } …
ES6必知必会 (八)—— async 函数
async 函数 1.ES2017 标准引入了 async 函数,它是对 Generator 函数的改进 , 我们先看一个读取文件的例子: Generator 写法是这样的 : var fs = require('fs'…