1
array.sort
当array2个值相等的时候,一般不管返回1还是-1,都是可以的。但是chrome部分版本不行,如果a,b比较返回1,b,a比较也返回1,那么结果会变成随机,整个排序就乱掉了。
暂时的解决方法是,sort前给每个值(非基本类型)加一个属性,放入当前index。当a,b相等时候,比较index,可以保证不会出现相等值。
2
mousemove,mouseup
当同时使用了mousemove和mouseup的时候,鼠标移动中抬起,会发现mouseup不触发,只触发了mousemove。
解决方法,把mouseup事件绑定到doucment上去,不要绑定在任何元素上面
3
copy事件
chrome部分版本无法用js进行拷贝,百度后,发现需要手动修改copy事件,将需要复制的文字放入clipboardData中去
另外,不知道是我写错了还是什么,原生js无法修改copy事件,所以是用jquery写的
var copyAll;
$(document.body).bind({
copy: function(e) {//copy事件
var clipboardData = window.clipboardData; //for IE
if (!clipboardData) { // for chrome
clipboardData = e.originalEvent.clipboardData;
}
clipboardData.setData('Text', copyAll);
return false;
}
});
调用copy的地方给copyAll赋值并执行document.execCommand("Copy");
另外,必须有鼠标点击动作才能触发这个命令,没有互动时候想要复制也是不行的。