![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Web
文章平均质量分 71
Three_ST
学习者
展开
-
Angular 异常 NG0904: unsafe value used in a resource URL context
因为在iframe中执行angular不信任的操作,需要使用angular提供的DomSanitizer。原创 2023-07-08 22:18:52 · 1745 阅读 · 0 评论 -
前端知识之angular组件库之NG-ZORRO-ANTD结构窥探(三)pipe ,polify,service
angular components service pipe polify原创 2023-02-25 22:15:04 · 775 阅读 · 0 评论 -
前端知识之angular组件库之NG-ZORRO-ANTD结构窥探(二)components
ng-zorro-andt 结构原创 2023-02-16 22:49:35 · 1007 阅读 · 0 评论 -
前端知识之angular组件库之NG-ZORRO-ANTD结构窥探(一)components
ng-zorr-antd,components 点击.fade-header content内容就会展开。其中使用到了angular中的cdk/coercion。里面封装了框架中使用到的共用组件和方法。ng-zorro-ant中使用的动画。项目组件中的公共方法集合地。存放组件以及命令的目录。内置了几种常用的颜色。原创 2023-02-12 15:00:39 · 804 阅读 · 0 评论 -
HTML5 实现页面滚动
最近项目中需要使用页面滚动,其实页面滚动相对来说挺简单的,但是在实际的使用过程中,尝试了几种不同的方法,总结一下:一、利用html 标签二、ScrollToView原创 2019-04-01 21:44:35 · 21045 阅读 · 2 评论 -
JavaScript之字符串常用函数与方法
String字符串常见操作charAt(x)charCodeAt(x)concat(v1,v2…)fromCharcode(c1,c2)indexOf(substr, [start])lastIndexOf(substr, [start])match(regexp)replace(regexp/substr, replacetext)search(regexp)slice(start, [end])split(delimiter, [limit])substr(start, [l转载 2021-10-31 19:53:45 · 145 阅读 · 0 评论 -
JavaScript基础之实现部分原生与有趣的api(一)
JS实现原生api::: tipES5实现map()方法Array.prototype.MyMap = function(fn,context){ var arr = Array.prototype.slice.call(this); //es5 不需要用...展开 var mappedArr = []; for(var i =0;i<arr.length;i++){ if(!arr.hasOwnProperty(i))continue;原创 2021-10-28 23:17:12 · 310 阅读 · 0 评论 -
浏览器工作原理与实践|16:WebApi setTimeout是怎么实现的
浏览器页面是由消息队列和事件循环系统来驱动的。过setTimeout和XMLHttpRequest这两个 WebAPI 来介绍事件循环的应用。这两个 WebAPI 是两种不同类型的应用,比较典型,并且在JavaScript 中的使用频率非常高。setTimeout它就是一个定时器,用来指定某个函数在多少毫秒之后执行。它会返回一个整数,表示定时器的编号,同时你还可以通过该编号来取消这个定时器。function showName(){ console.log("极客时间")}var timerID转载 2021-10-26 21:34:17 · 178 阅读 · 0 评论 -
JavaScript 基础之 关于js中的Array.sort()的使用
这里写自定义目录标题怪异行为怪异行为Array.sort((a,b)=>{a - b});在Chrome和Firefox下面执行的结果有些不一致chrome edgeconst months = ['March', 'Jan', 'Feb', 'Dec'];months.sort();console.log(months);// expected output: Array ["Dec", "Feb", "Jan", "March"]const array1 = [1, 30原创 2021-09-17 21:52:56 · 658 阅读 · 0 评论 -
手写JavaScript之实现一个EventBus
EventBus是消息传递的一种方式,基于一个消息中心,订阅和发布消息的模式。设计模式:订阅者发布者模式API设计只能构造一个消息对象on(‘msgName’,func)订阅消息, msgname订阅的消息名称;func订阅的消息one(‘msgName’,func)经订阅一次消息,后订阅的会替换前面订阅的消息emit(‘msgname’,msg)发布消息 msgName;消息名称 msg:发布的消息off('msgName)移除消息代码实现//构造EventBusEventBusC原创 2021-08-31 20:41:10 · 211 阅读 · 0 评论 -
JavaScript实现自定义Event(omit,once,addEventListener)
自定义实现JavaScript中的事件函数,包括AddListener,RemoveListener,Once,Emit等方法function EventEmitter(){ this.events = new Map();}// 实现方法// addEventListenerconst wrapCallback = (fn,once=false)=>({callback:fn,once});EventEmitter.prototype.addListener = function原创 2021-08-30 21:15:26 · 539 阅读 · 0 评论 -
JavaScript知识之正则表达式(RegExp)
描述字面量和构造函数有两种方法可以创建一个 RegExp 对象:一种是字面量,另一种是构造函数。字面量由斜杠(/)包围而不是引号包围。构造函数的字符串参数由引号而不是斜杠包围。以下三种表达式都会创建相同的正则表达式:/ab+c/i; //字面量形式new RegExp('ab+c', 'i'); // 首个参数为字符串模式的构造函数new RegExp(/ab+c/, 'i'); // 首个参数为常规字面量的构造函数当表达式被赋值时,字面量形式提供正则表达式的编译(co.原创 2021-08-24 22:06:34 · 312 阅读 · 0 评论 -
python&selenium 爬虫之页面的等待方法
selenium的三种等待方法页面加载问题Ajax技术,不确定时间implicitly_wait一次设置永久有效元素未加载会一直等待,时间过长WebDriverWaitselenium提供得到显示等待模块引入路径参数 driver - 传入的webdriver实例参数 timeout - 超时时间:等待的最长时间参数 poll_frequency - 调用until或者until_not中方法的间隔时间,默认0.5s参数 ignore_exceptions - 忽略的异常等原创 2021-08-11 21:33:18 · 298 阅读 · 0 评论 -
Python&Selenium学习之-按照属性查找页面元素
在页面中获取页面内容的方式多种多样,介绍一种按照属性名称,并且使用多种方法获取import timefrom selenium import webdriver driver = webdriver.Chrome()driver.maximize_window()wait = WebDriverWait(wd, 60)driver.get('https://www.baidu.com')wintitle = wait.until(expected_conditions.url_chan原创 2021-07-27 23:55:23 · 538 阅读 · 0 评论 -
web前端之浏览器V8垃圾回收机制
Chrome V8 & JavaScript垃圾回收机制垃圾数据回收分为手动回收和自动回收两种策略。何时分配内存、何时销毁内存都是由代码控制的//在堆中分配内存char* p =(char*)malloc(2048);//在堆空间中分配2048字节的空间,并将分配后的引用地址保存//使用p指向的内存{ //....}//使用结束后,销毁这段内存free(p);p = NULL;从上面这段 C 代码可以看出来,要使用堆中的一块空间,我们需要先调用 mallco 函数分配内存原创 2021-07-12 21:40:14 · 140 阅读 · 0 评论 -
Web前端之浏览器拍照实现-浏览器原生API实现全像素拍照(不同于论坛大多数的拍照方法)
浏览器拍照上面一篇是利用mediaStream获取视频流,通过视频流截图实现拍照功能,但是问题是像素和画质较差,对于有较高要求的场景不能满足,因此继续搜索相关资料 ,这方面的权威肯定是MDN,因此在MDN上搜素能够实现拍照的API,终于在搜素过程中发现了一个实验性功能,只有chromium webkit内核的浏览器才支持该功能。ImageCapture() constructor这个就是本次要讨论的功能,这个API能够调用相机实现拍照,也是从mediaStream中获取视屏流,但是这个是为了显示当前传原创 2021-07-07 17:10:10 · 1661 阅读 · 0 评论 -
前端(JavaScript)基础知识学习之浏览器相关与通信、跨域(CORS)
浏览器相关知识浏览器内核浏览器/RunTime|:内核(渲染引擎)|JavaScript 引擎–:|:–|:–Chrome |Blink(28~) Webkit(Chrome 27) |V8FireFox |Gecko | SpiderMonkeySafari |Webkit| JavaScriptCoreEdge |EdgeHTML |Chakra(for JavaScript)IE |Trident |Chakra(for JScript)PhantomJS |Webkit |Java原创 2021-06-30 23:14:58 · 139 阅读 · 0 评论 -
web前端之HTML5 在桌面端实现拍照功能一 video (typescript)
前言关于在桌面端通过调用摄像头拍照的需求,可能没有那么主流,因为现在大多数都通过移动端(手机,平板)完成,但是如果有需求就要想办法实现,通过查阅资料了解到目前浏览器摄像头拍照有几种实现方式:1.利用浏览器提供的MedieStream2.利用flash(这个已经快被淘汰了)因此没有采用...原创 2021-06-30 22:40:08 · 932 阅读 · 0 评论 -
百度离线人脸识别SDK-WebAPI离线集成与调用方法,附源代码
Baidu人脸识别离线SDK本文是在Baidu离线SDK版本上做的二次开发与集成,将原先的C#版本功能移植到Web平台,目前支持.NET Core和ASP.NET 和原生控制台的三个版本,同理可以集成进WInform等平台。关于本SDK在寻找可用的SDK这个过程中,在网上做了很多的尝试和搜罗,排除价格和效果等因素,参考上一篇文章《人脸识别应用初探-微软人脸识别在线SDK使用》,由于微软在国内没有部署离线识别模型,因此就是做了web api调用官方离线SDK文档地址:https://ai.baidu原创 2021-06-13 11:24:22 · 1971 阅读 · 4 评论 -
前端基础知识学习之-ShadowDOM&LightDOM
DOMDOM和SAXW3C制定了一套书写XML分析器的标准接口规范——DOM。除此以外,XML_DEV邮件列表中的成员根据应用的需求也自发地定义了一套对XML文档进行操作的接口规范——SAX。这两种接口规范各有侧重,互有长短,应用都比较广泛。应用程序开发过程中,应用程序不是直接对XML文档进行操作的,而是首先由XML分析器对XML文档进行分析。然后,应用程序通过XML分析器所提供的DOM接口或SAX接口对分析结果进行操作,从而间接地实现了对XML文档的访问。DOM介绍 优缺点分析DOM: D原创 2021-05-30 14:31:37 · 1114 阅读 · 2 评论 -
前端基础知识之SVG&Canvas之间的区别与简单应用
::: tipcanvas常用APIfillRect(x,y,width,height)实心矩形strokeRect(x,y,width,height)空心矩形fillText(“Hello world”,200,200);实心文字strokeText(“Hello world”,200,300)空心文字canvas和svg的区别svg绘制出来的图片有独立dom节点,可以绑定事件,是矢量图,放大图片不会有锯齿。canvas绘制出来的图片是一个画布,等于就是一张图,放大会产生锯齿。:原创 2021-04-29 22:26:33 · 708 阅读 · 0 评论 -
计算机网络基础知识学习之-滑动窗口基础知识与拥塞控制cubic算法
算法实例1208. 尽可能使字符串相等给你两个长度相同的字符串,s 和 t。将 s 中的第 i 个字符变到 t 中的第 i 个字符需要 |s[i] - t[i]| 的开销(开销可能为 0),也就是两个字符的 ASCII 码值的差的绝对值。用于变更字符串的最大预算是 maxCost。在转化字符串时,总开销应当小于等于该预算,这也意味着字符串的转化可能是不完全的。如果你可以将 s 的子字符串转化为它在 t 中对应的子字符串,则返回可以转化的最大长度。如果 s 中没有子字符串可以转化成 t 中对应的子原创 2021-04-27 21:49:40 · 241 阅读 · 0 评论 -
前端基础知识之清除浮动的几种方式
清除浮动现象:不清除浮动会发生高度塌陷:浮动元素父元素高度自适应(父元素不写高度时,子元素写了浮动后,父元素会发生高度塌陷)clear清除浮动(添加空div法)在浮动元素下方添加空div,并给该元素写css样式:{clear:both;height:0;overflow:hidden;}给浮动元素父级设置高度;<style type="text/css"> .div1{background:#000080;border:1px solid red;/*解决代码*/heigh原创 2021-04-25 21:33:42 · 591 阅读 · 0 评论 -
web安全基础知识之单点登录-SSO几种原理图解(single sign on)
本文是个人学习的记录,系列文章传统的登录,就是根据用户名,密码,建立session,把session通过cookie发送到请求者的浏览器上,下次在登陆会发送cookie,这样服务器就知道登录了。SSO:单点登录,在一个地方登录一次,就可以访问所以的系统1.cookie(不能跨域2.session(共享session,在不同是系统,不同架构下的session共享麻烦3.使用token利用cookie,在用户登录后,在cookie中写入token,在用户访问其他系统的时候,验证一下token,如原创 2021-03-08 20:15:54 · 855 阅读 · 0 评论