JS

js注释在ie10中的一个"兼容问题"

//@see https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser/9851769 // I...
lynxerzhang 发布于 4个月前 268 1
JS

React Router Link state的获取

React Router 的Link组件的to属性,可以传递一个对象,包含相应的参数: <Link to={{ pathname: '/person', search: '?id=1', hash: '#', stat...
Cecilio 发布于 8个月前 440 1

利用Chrome的Performance工具排查页面性能问题

当页面中发生卡顿,最先考虑的是swf文件造成的卡顿,经过排查发现不是swf造成的影响,利用Chrome的Performance工具发现页面中的一些元素不断在重新布局,造成潜在的性能瓶颈。 首先在Chrome中进入隐身模式,然后再在Chr...

console.log 和 console.warn 的Polyfill Demo

在低版本的ie中运行console.log可能造成报错,参考paulirish的一个解决方案写了如下Demo,只针对浏览器环境 /** * 对常用的console.log和console.warn进行Polyfill的判断。 * f...
lynxerzhang 发布于 1年前 247
JS

利用React 制作类似Flash的取色板Demo

//单一色块 class ColorBlock extends React.Component { static propTypes = { color: React.PropTypes.string }; ...

Flexslider显示指定slide

Flexslider指定显示某个slide,api提供了以下方法, $('.flexslider').flexslider(3); 上面这个方法移动到某个slide的时候会加上缓动效果,但是如果想无动效移动到某个slide的时候,如下代码 ...
zhimo 发布于 1年前 239

解决Flexslider初始不显示的BUG

问题 使用Flexslider的时候,如果这个slider默认是隐藏不显示的,比如这个slider在一个弹层里面。当显示这个弹层的时候,弹层中的slider是空的如下图,但当点了按钮切换slide或者改变浏览器尺寸之后,slide当中的内容...
zhimo 发布于 1年前 925

自定义ArrayBuffer以提供操作便利Demo

goim是一个由golang编写的im服务器端框架,在其examples目录中有一个js demo,想在flash端使用则需要进行代码转换,在转换过程中,发现js的ArrayBuffer和as3的ByteArray有些使用上的不同需要注意。...
lynxerzhang 发布于 1年前 351 2

输出数值的二进制形式

输出数值的二进制形式最直接的方法就是调用数值的toString()方法,在该方法中填入参数2就行了,但是输出结果不会填充0。 比如数值1,输出结果就是"1",数值-1,输出结果就是"-1",不是很直观...
lynxerzhang 发布于 1年前 249

一个解决swfobject.js嵌入swf文件无法播放的方案

搜索后发现可能的原因是在Chrome 55之后, swfobject.js无法获取某些所需的浏览器属性,导致它检测用户的flashplayer的版本号出现问题,嵌入swf的代码块无法执行,如果需要继续使用swfobject.js来嵌入swf...

利用Fiddler来帮助调试minified后的js

Danmaku 是一个js实现的弹幕框架,原想在Chrome开发者模式下打下断点查看框架代码运行情况,发现例子中的js是压缩过的,即便格式化一下,代码可读性不是很好,而使用Fiddler可以替换这个min.js,以便于查看框架代码的实际运行...

擦除效果库jQuery.eraser与fullpage兼容问题

擦除效果库jQuery.eraser放在fullpage的H5页面中的时候,当在第一页使用这个擦除库的时候没有任何问题,但是放在之后的页面的话,会出现jQuery.eraser已经生成成功了但无法擦除的问题。因为jQuery.eraser在...
zhimo 发布于 1年前 433
JS

在ie9下兼容Range的createContextualFragment方法

在developer console中发现Range的createContextualFragment在ie9下不支持,导致插入表情的功能无效。 //... var df; if(range.createContextualFragment...

JS中RGB数值转换Hex

class Colorutil { //RGBtoHex方法将r,g,b数值转换为#hex形式 static RGBtoHex(r, g, b) { let hex = r << 16 | g << 8...

js keyboardManager demo

//如下demo使用es5语法编写(实现一个js版的KeyBoardManager,该KeyBoardManager的实现参考自https://github.com/richardlord/Actionscript-Toolkit) //...

微信中自动播放背景音乐

手机上只允许点击html元素之后才能播放声音,但是在微信里面可以通过监听下面这个事件,然后在里面播放声音 document.addEventListener("WeixinJSBridgeReady", function () { ...
xtigerj 发布于 1年前 270

HTML5 Canvas 动画绘制流程Demo

如下是一个在HTML5的Canvas元素上, 依靠setTimeout函数不断调用requestAnimationFrame来进行动画绘制的流程。 <canvas id ="canvas" width="300", height="2...

前端面试题小测。

function Foo() { getName = function () { console.log(1); }; return this; } Foo.getName = function () { consol...
mmxiaohx 发布于 1年前 253
JS

Number.isNaN() polyfill

if(!Number.isNaN){ Number.isNaN = function(n) { return typeof n === 'number' && window.isNaN(n) } } ...
Cecilio 发布于 1年前 237
JS

JS格式化浮点数和货币

保留小数点位数 var profits=2972.1238 profits.toFixed(3); //2972.124 profits.toFixed(2); //2972.12 profits.toFixed(5); //2972.12...
xtigerj 发布于 1年前 211
JS

JS生成指定范围内的随机数

// min <= 随机数 < max function getRandomNumber(min, max) { return Math.random() * (max - min) + min; } // min &...
xtigerj 发布于 1年前 174
JS

JS新窗口/页签打开页面

function openInNewTab(url) { var win = window.open(url, '_blank'); win.focus(); }...
xtigerj 发布于 1年前 179
JS

JS批量替换换行符

str = str.replace(/(?:\r\n|\r|\n)/g, '<br />');...
xtigerj 发布于 1年前 154
JS

JS设置方法参数默认值

git checkout --theirs application/config/edition_config.php...
xtigerj 发布于 1年前 160
JS

JS获取URL参数

var urlParams; (window.onpopstate = function () { var match, pl = /\+/g, // Regex for replacing additio...
xtigerj 发布于 1年前 202
JS

jQuery判断checkbox是否选中

$('#cb').attr('checked'); // "checked" $('#cb').prop('checked'); // true $('#cb').is(':checked'); // true...
xtigerj 发布于 1年前 184

节流函数throttle

// 简单的节流函数 //fun 要执行的函数 //delay 延迟 //time 在time时间内必须执行一次 function throttle(fun, delay, time) { var timeout, startTime ...
Cecilio 发布于 1年前 187
JS

object constant

组合使用两个属性描述符: writable: false 和 configurable: false.实现对象的常量属性(即不可更改,不可删除,不可重定义). let myObject = {} Object.defineProperti...
Cecilio 发布于 1年前 201
JS

[算法]选择排序--JS实现

基本思想:从i=1开始,每一次都在n-i+1个无序序列中选择值最大的元素,并将其放到第i个位置处 // 以顺序表作为存储结构的简单选择排序 function selectSort(arr) { var i,j,k,temp; ...
Cecilio 发布于 1年前 212

[算法]快速排序--JS实现

基本思想: 取待排序的序列中的某个元素作为划分元素,通过一趟排序,将待排序元素分为左右两个子序列,左子序列元素均小于等于划分元素,右子序列元素则大于划分元素,然后分别对两个子序列继续进行排序,直至整个序列有序. /* 划分的位置 */ f...
Cecilio 发布于 1年前 218