
前端
文章平均质量分 62
小龙在山东
本博客为个人整理的技术笔记,仅用于学习。
展开
-
基于 mxgraph 实现流程图
mxgraph 可以实现复杂的流程图绘制。mxGraph里的Graph指的是图论(Graph Theory)里的图而不是柱状图、饼图和甘特图等图(chart),因此想找这些图的读者可以结束阅读了。作为图论的图,它包含点和边,如下图所示。原创 2025-03-26 22:30:00 · 1144 阅读 · 0 评论 -
基于 arco 的 React 和 Vue 设计系统
arco 是字节跳动出品的企业级设计系统,支持 React 和 Vue。原创 2025-03-25 23:45:00 · 414 阅读 · 0 评论 -
electron 安装报错:RequestError: certificate has expired
在使用 yarn 安装 electron 时,报证书过期的错误。原因是以前使用的阿里的镜像已经过期,改成新的镜像地址就可以了。原创 2025-03-12 23:45:00 · 448 阅读 · 0 评论 -
Flutter Scaffold 页面结构
在app/themes/app_theme.dart下定义两个主题样式:一个浅色,一个深色。));));上面的小部件都是放在一起,我们还可以把一些把页面的部分小部件单独放到一个文件里,这里以appBar为例:@override@overridetitle: Text("页面标题"),print("这是导航菜单");},actions: [print("这是Action位置");},],// 设置标签栏Tab(),Tab(]),原创 2025-02-03 18:45:50 · 1107 阅读 · 0 评论 -
Flutter常用Widget小部件
小部件Widget是一个类,按照继承方式,分为无状态的StatelessWidget和有状态的StatefulWidget。这里先创建一个简单的无状态的Text小部件。原创 2025-02-01 16:49:55 · 724 阅读 · 0 评论 -
Flutter开发环境配置
M1/M2芯片选择带arm64字样的Flutter SDK。原创 2025-01-31 00:47:01 · 647 阅读 · 0 评论 -
JavaScript实现MD5、AES-CBC加密解密
CryptoJS是用JavaScript编写的加解密包,支持生成哈希、AES加密解密、多种编码方式。原创 2023-07-13 20:29:43 · 1383 阅读 · 0 评论 -
常用CSS整理
1、文字超出部分显示省略号单行文本的溢出显示省略号(一定要有宽度) p{ width:200rpx; overflow: hidden; text-overflow:ellipsis; white-space: nowrap; }多行文本溢出显示省略号p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hid原创 2021-07-15 09:58:06 · 527 阅读 · 0 评论 -
a img禁用referer
用超链接的方式从一个网站跳转到另外一个网站,会报无权限等错误,而直接打开就不报错。从一个网站引用另一个网站的图片,会显示防盗链的图片。。。很大的原因就是服务器检查了referer,判断是否来自自己的服务器,如果不是的话,就返回个错误。如果想跳过这些检查,就需要把浏览器默认加的referer去掉。这里有四种方法:方法一:HTML全局禁用referer<meta name="referrer" content="never">其中content有四种类型的值:类型含义原创 2021-04-05 11:06:16 · 1970 阅读 · 0 评论 -
ES6的代理(Proxy)和反射(Reflect)API
Reflect 是一个内置的对象,它提供拦截 JavaScript 操作的方法。这些方法与proxy handlers的方法相同。Reflect不是一个函数对象,因此它是不可构造的。Proxy 对象用于定义基本操作的自定义行为(如属性查找、赋值、枚举、函数调用等)。原创 2020-08-26 15:09:52 · 564 阅读 · 0 评论 -
开发Chrome插件教程
插件由不同组件构成,组件包括background脚本, content脚本,一个选项页, UI元素和一些逻辑文件。扩展组件的实现技术包括HTML、CSS和Javascript。创建Manifest扩展从Manifest文件开始,文件名叫manifest.json。1、打开chrome://extensions,也可以通过更多工具-扩展程序来打开这个页面。2、打开开发者模式。3、加载未打包按钮这个扩展会被成功加载。增加功能现在还没有任何功能,现在通过background.js增加一个后台功能。原创 2020-06-24 16:25:18 · 793 阅读 · 0 评论 -
清明哀悼 网站变灰(兼容常用浏览器)
清明时节,为了表达全国各族人民对抗击新冠肺炎疫情斗争牺牲烈士和逝世同胞的深切哀悼,全国很多网站变成灰色。原创 2020-04-04 09:41:37 · 1037 阅读 · 0 评论 -
Chromedriver connect ETIMEDOUT 网络问题
Chromedriver镜像Appium 安装的时候需要下载 Chromedriver,所以经常会遇到网络问题。Chromedriver 默认是从 https://chromedriver.storage.googleapis.com/ 下载。如果要使用镜像的话,需要配置npm的参数 chromedriver_cdnurl。npm install appium-chromedriver --...原创 2019-08-07 14:25:53 · 2311 阅读 · 0 评论 -
spy-debugger移动手机调试和HTTP/HTTPS抓包
简介一站式页面调试、抓包工具。用于远程调试微信、HybridApp等各种WebView样式、手机浏览器的页面真机调试。便捷的远程调试手机页面、抓包工具,支持:HTTP/HTTPS,无需USB连接设备。spy-debugger原理是集成了weinre,简化了weinre需要给每个调试的页面添加 js 代码。spy-debugger原理是拦截所有 html 页面请求注入weinre所需要的 js ...原创 2018-10-19 15:45:51 · 2541 阅读 · 1 评论 -
弹性布局(Flexbox)的简单使用
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">原创 2018-03-05 15:38:52 · 422 阅读 · 0 评论 -
JavaScript作用域和var的关系
JS解析顺序和作用域:解析顺序:定义(先找var function)执行(在逐步执行)注意:如果函数名和var定义的变量相同,var会被函数覆盖作用域:每个script是一个作用域每个函数{}是一个作用域程序每执行到一个作用域,都是按照解析顺序解析代码;作用域链:从内往外找要找函数内的变量;案例分析举例1alert( a );var a = 10;alert( a );fun原创 2017-04-21 19:28:28 · 827 阅读 · 0 评论 -
使用D3实现词云效果
D3.js是一个功能非常强大的数据展示js框架。比起echarts,定制性更强,插件丰富。现在以一个词云插件为例做简单使用。原创 2017-05-16 17:59:28 · 12498 阅读 · 0 评论 -
JS的四种异步方式:回调/监听/流程控制库/promise
你可能知道,Javascript语言的执行环境是”单线程”(single thread)。所谓”单线程”,就是指一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。这种模式的好处是实现起来比较简单,执行环境相对单纯;坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应(假死),往往就是因为某一段Javascri转载 2017-07-04 18:39:59 · 6382 阅读 · 0 评论 -
JS异步之Thunk函数
本文是《深入掌握 ECMAScript 6 异步编程》系列文章的第二篇。Generator函数的含义与用法Thunk函数的含义与用法co函数库的含义与用法async函数的含义与用法一、参数的求值策略Thunk函数早在上个世纪60年代就诞生了。 那时,编程语言刚刚起步,计算机学家还在研究,编译器怎么写比较好。一个争论的焦点是”求值策略“,即函数的参数到底应该何时求值。var x = 1;f转载 2017-07-04 18:51:30 · 894 阅读 · 0 评论 -
JS异步之co函数库
以下是《深入掌握 ECMAScript 6 异步编程》系列文章的第三篇。Generator函数的含义与用法Thunk函数的含义与用法co函数库的含义与用法async函数的含义与用法一、什么是 co 函数库?co 函数库是著名程序员 TJ Holowaychuk 于2013年6月发布的一个小工具,用于 Generator 函数的自动执行。比如,有一个 Generator 函数,用于依次读取两转载 2017-07-04 19:01:14 · 2136 阅读 · 0 评论 -
JS异步之:回调/Promise/协程/Generator
本文是《深入掌握 ECMAScript 6 异步编程》系列文章的第一篇。Generator函数的含义与用法Thunk函数的含义与用法co函数库的含义与用法async函数的含义与用法异步编程对 JavaScript 语言太重要。JavaScript 只有一根线程,如果没有异步编程,根本没法用,非卡死不可。以前,异步编程的方法,大概有下面四种。回调函数事件监听发布/订阅Promise转载 2017-07-04 17:07:33 · 6410 阅读 · 0 评论 -
JS里call和apply的作用和区别
区别 call() apply() 作用 call() 方法调用一个函数, 其具有一个指定的this值和分别地提供的参数(参数的列表)。 apply() 方法调用一个函数, 其具有一个指定的this值,以及作为一个数组(或类似数组的对象)提供的参数。 语法 fun.call(thisArg[, arg1[, arg2[, …]]]) fun.apply(thisA原创 2017-07-04 19:57:41 · 1235 阅读 · 0 评论 -
JS异步之async函数
本文是《深入掌握 ECMAScript 6 异步编程》系列文章的最后一篇。Generator函数的含义与用法Thunk函数的含义与用法co函数库的含义与用法async函数的含义与用法一、终极解决异步操作是 JavaScript 编程的麻烦事,麻烦到一直有人提出各种各样的方案,试图解决这个问题。从最早的回调函数,到 Promise 对象,再到 Generator 函数,每次都有所改进,但又让原创 2017-07-04 19:11:55 · 2231 阅读 · 0 评论 -
响应式导航(从水平到垂直)的分析与实现
使用媒体查询,在宽屏下,使用类pure-u-md-1-3,使得导航水平放置,隐藏切换按钮;在窄屏下,使用类pure-u-1,使得导航垂直放置,显示切换按钮,其中切换按钮使用了绝对定位。代码详情<!--[if lte IE 8]> <link rel="stylesheet" href="https://unpkg.com/purecss@1.0.0/build/grids-responsiv原创 2017-08-20 11:35:48 · 591 阅读 · 0 评论 -
font-face加载任意字体和字体格式转换
font-face加载任意字体和字体格式转换原创 2017-08-12 15:57:55 · 2036 阅读 · 0 评论 -
HTML页面自适应宽度的table(表格)
WEB应用的页面,表格的表现形式是常常遇到的,在列数有限的前提下,如何将各列中的内容自适应到不同分辨率的屏幕,这应该是一个比较容易遇到的问题,下面就来谈一谈我对这类问题的解决与看法。 将所有列设置为固定宽度,显然是不能满足此类要求的,但是若把全部的列都设置为百分比,恐怕在某些尺寸,或分辨率下,会变得很难看。比较习惯于用如下的方式来处理——在表格列数不是很多的前提下——将大部分列宽用固定值设置死,留原创 2017-08-26 20:30:22 · 54462 阅读 · 0 评论 -
实例讲解node.js解析URL并获取绝对路径和格式化
URLurl.parse(urlStr[, parseQueryString][, slashesDenoteHost]) 参数 说明 urlStr 网址 parseQueryString 是否把query通过querystring解析为对象。 slashesDenoteHost 如果为 true,则 // 之后至下一个 / 之前的字符串会被解析作为 host。 例如,原创 2017-06-29 11:09:17 · 3675 阅读 · 0 评论 -
jQuery技巧大放送
1、关于页面元素的引用通过jquery的$()引用元素包括通过id、class、元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jquery对象(集合对象),不能直接调用dom定义的方法。2、jQuery对象与dom对象的转换只有jquery对象才能使用jquery定义的方法。注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象转载 2010-01-07 21:20:00 · 458 阅读 · 0 评论