- 博客(21)
- 资源 (4)
- 收藏
- 关注
原创 正则表达式非捕获分组与具名分组
1, 非捕获分组在使用正则表达式的时候,我们的表达式中可能有多个分组,而我们真正关心的只有其中的某一个分组,那么如何让我们的表达式不去捕获我们不关心的分组呢,比如我们有表达式const regex = /(Jane|John|Alison)\s(.*?)\s(Smith|Smuth)/;这个表达式匹配英语中的最常见的几个英文名,包括名字,中间名和姓,使用该表达式来匹配下面的名字const resu...
2018-05-10 18:50:51
1105
原创 openlayer4加载百度地图
var resolutions = [];for(var i=0; i<= 18; i++) { resolutions[i] = Math.pow(2, 18 - i);}var tileGrid = new ol.tilegrid.TileGrid({ origin:[0, 0], resolutions: resolutions});var bai...
2018-04-13 19:11:46
2377
原创 dojo源码阅读之dojo/Stateful
dojo/Stateful是dojo中的一个基类,提供了能够观测对象属性变化的功能,Stateful 使用文档。其基本用法如下:var s = new Stateful({foo:8})s._fooSetter = function(value){ this.foo = value;};s.watch("foo", function(name, oldValue, newValue){...
2018-04-12 16:18:20
553
原创 dojo源码阅读之declare
dojo是一个开源的javascript 类库,它提供了一个declare函数来方便的实现多重继承。下面看下declare的实现原理。1, 使用declare声明一个类(未继承其他类的类)。let Human = declare([], { name: "", constructor:function(args){ for(let i in args) { ...
2018-04-07 00:02:21
417
原创 使用javascript下载页面中的表格数据
以前要下载web页面中的数据要依靠sever端,现在使用Blob等较新技术可以直接使用javascript把页面表格中的数据下载下来,本篇主要讲述把表格数据下载为csv文件。例如我们想要把上面表格中的数据下载为csv文件,步骤如下获取表格中文本内容。拼接成csv格式的字符串。如本例中最终拼接后的字符串应为: Name;Math;Physics;Chemistry; \n Melani...
2017-09-25 18:49:50
3313
原创 使用XPath选择DOM元素
在自动化UI测试中, 我们需要找到页面中某个元素进行操作,如单击表单中的某个按钮。我们可以使用测试工具来选择我们想要操作的元素(如intern提供了如 remote.findByCssSelector, remote.findById等等),其中一个方法为remote.findByXpath. 我们可以根据Xpath来选择我们想要定位的元素。 为了确定所使用的Xpath是否正确,我们可以在浏览器
2017-08-31 19:26:05
2143
原创 javascript中的原型继承
1, 什么是原型? 在javascript中当我们定义一个函数时,浏览器会为我们定义的函数添加一个prototye属性,这个prototye属性指向一个对象,这个被prototype指向的对象即为我们定义函数的原型。例如 function Person(){ }
2017-08-29 19:14:50
261
1
原创 javascript 复制内容到剪切板
在github里面,我们经常使用的一个功能就是复制代码仓库地址。 下面介绍实现这种功能的一种方法。步骤:1, 创建一个临时的input2, 设置临时input的value为要复制的内容3,执行 document.execCommond('copy');4, 删除临时input示例: https://jsfiddle.net/5g9map9c/
2017-08-08 20:14:27
252
原创 clientWidth offsetWidth scrollWidth区别
clientWidth: 元素内部宽度,即可视内容区域宽度, 它包括左侧padding宽度加上可视内容再加上右侧padding宽度。也即元素左边界内侧到右边界内侧的距离。offsetWidth:元素外部宽度,即整个元素的宽度,包括左右边界宽度加上左右padding宽度再加上可视内容区域宽度scrollWidth: 元素内部整个内容区域的宽度。在元素没有滚动条的情况, scrollWidth
2016-10-22 18:37:30
1029
原创 mongodb格式化输出查询结果
在.mongorc.js文件中添加如下配置: DBQuery.prototype._prettyShell = true
2015-12-05 14:26:23
1970
原创 get currrent script url
function getCurrentScriptUrl(){ if(document.currentScript){ return document.currentScript.src; //chrome firefox opera 32 }else{ try{ throw Error(); }catch
2015-10-21 18:26:56
416
原创 javascript 中 x offsetX clientX screenX pageX的区别
在javascript的事件对象中的关于事件鼠标位置的几个属性(x, pageX, offsetX, scrrenX clientX)及(y, pageY, offsetY, screenY, clientY),其中offsetX, offsetY是指相对于触发事件元素的左上角的偏移。但在不同的浏览器中其值又有所不同。在chrome opera, safari中是指外边缘,即把该元素边框的宽度
2015-10-18 23:52:37
12677
1
原创 把周数转化为日期
function convertWeekNumberToFirstDate(sYear, sWeek, startFromFirstMonday){ if (startFromFirstMonday == undefined) startFromFirstMonday = true; var weekIndex = 1; var year = parseInt(sYe
2015-07-20 14:34:06
1184
原创 使用sugar crm rest api 创建联系人时有概率返回被删除的联系人的id
最近项目有一个需求,要把我们的数据导出到sugar crm中,第一次导出一条记录时到sugar crm的联系人中,sugar crm 会自动生成一个id(记为contact_id1), 在sugar crm 中把该导出的联系人删除,再把数据再一次导出到sugar crm中,sugar crm会生成一个contact_id2, 令人困惑的是contact_id2会有概率性等于contact_id1,
2015-04-13 19:20:05
715
原创 js clientTop
今天要做页面中元素的滚动,发现一个知识点,clientTop就是设置元素的border-top的值。类型number,(int)
2015-03-17 19:32:30
875
原创 js closure js 闭包的应用
var arr = new Array(123, 456, 789);for(i=0; ivar key = arr[i];$('' + key + '').prependTo($('#test')).bind('click', function(k){return function(){alert(k)}}(key));}
2014-11-13 21:33:22
434
原创 jquery remove 一个元素再append或prepend到其它的元素后,则其通过bind添加的事件则被删除
页面zhon first second third
2014-08-29 18:02:07
799
原创 firefox前台打不开,但后台在运行
运行 firefox.exe -p -no-remote 命令,弹出如下窗口:点击创建配置文件:点击‘完成’:点击‘启动firefox’即可。
2014-07-01 09:44:46
1721
1
原创 vim中把剪切板中的内容复制到正在编辑的文件中的快捷键
今天因为要配置apache的virtualhost,需要把剪切板中的内容复制到配置文件中,百度了好久,原来在vim中把系统剪切板中的内容复制到文件的快捷键是:shift + insert
2014-04-01 23:13:29
693
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人