web前端js
FE焱黑C
日敲代码数百行,不辞长做前端人
展开
-
服务端渲染
SSR的优势1. 更利于SEO。不同爬虫工作原理类似,只会爬取源码,不会执行网站的任何脚本(Google除外,据说Googlebot可以运行javaScript)。使用了React或者其它MVVM框架之后,页面大多数DOM元素都是在客户端根据js动态生成,可供爬虫抓取分析的内容大大减少(如图一)。另外,浏览器爬虫不会等待我们的数据完成之后再去抓取我们的页面数据。服务端渲染返回给客户端的是已...原创 2019-10-18 11:39:06 · 207 阅读 · 0 评论 -
移动端点击穿透修复
点透发生的理由:当手指触摸到屏幕的时候,系统生成两个事件,一个是touch 一个是click,touch先执行,touch执行完成后,A从文档树上面消失了,而且由于移动端click还有延迟200-300ms的关系,当系统要触发click的时候,发现在用户点击的位置上面,目前离用户最近的元素是B,所以就直接把click事件作用在B元素上面了.系统提供了先触发的touch事件去取消系统生成的cl...原创 2019-10-13 14:35:48 · 129 阅读 · 0 评论 -
js单线程
浏览器目前最为流行的浏览器为:Chrome,IE,Safari,FireFox,Opera。浏览器的内核是多线程的。一个浏览器通常由以下几个常驻的线程:渲染引擎线程:顾名思义,该线程负责页面的渲染 JS引擎线程:负责JS的解析和执行 定时触发器线程:处理定时事件,比如setTimeout, setInterval 事件触发线程:处理DOM事件 异步http请求线程:处理http...原创 2019-05-29 16:31:13 · 315 阅读 · 0 评论 -
宏任务与微任务
什么是宏任务、微任务先来了通俗易懂的例子:去银行办理业务的人就是一个个宏任务,当宏任务P1在柜台办理业务时,其它任务都需等待,当一个宏任务P1办理业务结束时,柜台职员会询问他还有没有其它微任务,如果他还有其他业务,则其他宏任务都需等待。就是微任务是在宏任务之前执行。宏任务、微任务有哪些宏任务包括:script(整体代码), setTimeout, setInterval, setImme...原创 2019-05-29 13:38:44 · 558 阅读 · 0 评论 -
日历列表
原创 2019-05-27 13:48:10 · 414 阅读 · 0 评论 -
微信分享和埋点
wxShare(info) {let data = {};data.title = info.title;data.desc = info.desc;data.link = `http://${window.location.host}/auth?${decodeURIComponent(getParam('state'))}`; 必须+httpdata.imgUrl ="h...原创 2019-05-17 17:34:06 · 2438 阅读 · 0 评论 -
Unable to preventDefault inside passive event listener
那么如何解决这个问题呢?不让控制台提示,而且 preventDefault() 有效果呢?两个方案:1、注册处理函数时,用如下方式,明确声明为不是被动的window.addEventListener('touchmove', func, { passive: false })2、应用 CSS 属性touch-action: none;这样任何触摸事件都不会产生默认行为,但是 touc...原创 2019-05-22 21:17:01 · 559 阅读 · 0 评论 -
z-tree滚动条自动定位
import { TreeComponent } from '../../../../assets/libs/paletxUI/tree/tree.component';@ViewChild(TreeComponent) treeComponent: TreeComponent;setTimeout(()=>{let treeHeight = $("#my-tree div...原创 2019-06-05 18:00:10 · 2019 阅读 · 0 评论