Saber 酱的抱枕

Fly me to the moon

04/1
2017
学习

JavaScript使代码延迟一段时间执行

JavaScript里说到延迟执行,一般想到的就是定时器。而且原生的方法里除了定时器,也没什么别的办法了。

但是定时器其实是一种插入机制,只针对它内部的代码做延迟,不能延迟整体代码的执行。

如果在某个时候,我们想让后面的代码全部延迟一定时间执行,只能把后面的代码全都放进定时器(或者改一下代码,只放调用部分)。多嵌套了一层,在代码的阅读和理解上产生了负面效果,很不舒服。

想要实现类似于其他程序的sleep函数的效果,我们可以用笨办法来做一个,实现整体代码的延迟。

示例:

function sleep(milliSeconds){
    var startTime = new Date().getTime();
    while (new Date().getTime() < startTime + milliSeconds);
}
console.log("1");
sleep(1000);
console.log("2");

不过使用sleep需要小心,因为它是整体延迟,会阻塞JavaScript进程,导致页面也卡住(类似于ajax的同步模式)。

比如上例代码,延迟一秒。如果在页面加载时执行,由于这一秒里JavaScript没执行完,所以页面加载时间就会增加一秒(+1s?),同时在这1秒里无法对页面进行操作。

那如果在页面加载完成后执行呢?这也会导致页面卡住1秒,因为sleep的代码导致CPU占用非常高,页面除了循环什么都不做了,导致用户在这1秒里无法对页面进行操作。

所以这个sleep虽然在效果上是真正的sleep(参考其他编程语言),但还是需要确认使用场景才能用,不能乱用。毕竟后台sleep用户只是多等了1秒,前台sleep却会导致页面卡住,对用户操作会产生直接的影响。

JavaScript使代码延迟一段时间执行

03/31
2017
学习

在JavaScript中创建Blob对象

JavaScript中的Blob对象可以存储二进制数据,并且还可以为数据指定MINE类型,因此适合在网页上储存文件用。

创建Blob对象需要使用new Blob()构造函数,它的语法如下:

Blob(blobParts[, options])

它有两个参数,第一个参数blobParts是要转化为Blob对象的数据,它必须在一个数组里。即使这份数据本来是独立的,也要创建一个数组把它包含到数组里。
第二个参数是可选的,使用Object类型的键值对来指定MINE类型。

示例:

var data='<b>aaa</b>';   
var blob=new Blob([data],{"type":"text/html"});   
console.log(blob);  

上例中是储存了一个html类型的Blob对象,实际使用中我们也可以储存其他文件类型,常见的有图片、json等。

相关资料:MDN上的相关内容
Read More →

在JavaScript中创建Blob对象

03/30
2017
ACG

pixiv上的阿斯托尔福(fgo阿福)r18图片

 Fate/Grand Order fatego fgo H hentai pixiv p站 アストルフォ 伪娘 图片 男の娘 福利 阿斯托尔福 阿福 图包

这里是pixiv阿斯托尔福的r18图片哦~アストルフォ r-18这个tag收藏数在1000以上的图片。我去掉了一些无关的图以及太丑的图。

度盘下载 提取码: x0xi 解压密码:13579

可爱的男孩子最棒啦n(*≥▽≤*)n
Read More →

pixiv上的阿斯托尔福(fgo阿福)r18图片

03/29
2017
学习 软件

百度贴吧只看楼主的UserScript

最近把之前做的一个百度贴吧只看楼主的脚本改了下,发布到了greasyfork上。

在帖子的任何地方,按下Alt+L组合键即可自动点击“只看楼主”,不用再翻到帖子顶部去点击啦~

ps:在只看楼主模式下,再次按下Alt+L组合键,就会取消只看楼主了。

安装地址

代码:

document.addEventListener("keydown", function(event) {
	var ev = event || window.event;
	if (ev.altKey&&ev.keyCode==76) {
		document.querySelector("#lzonly").click();
	}
}, false);

百度贴吧只看楼主的UserScript

03/29
2017
学习 软件

仙尊的百度贴吧小尾巴

仙尊的百度贴吧小尾巴 UserScript

今天想找个百度贴吧小尾巴的脚本,但是有些功能太多,我用不着那么复杂的,所以自己写了个简单的。(简陋到没有前台设置界面)

安装此用户脚本

可以插入一条文字内容和(或)一张图片,分别在两个变量里设置(在脚本里修改):

仙尊的百度贴吧小尾巴 UserScript

如果两条都设置了内容,那么就会一起发出去。你也可以清空文字或图片对应的内容,之后就不会追加那条内容了。

要使用时,使用快捷键Shift+Enter提交,就会加上小尾巴。如果使用贴吧的正常方式——Ctrl+Enter或者点击提交按钮,就不会加上小尾巴。

仙尊的百度贴吧小尾巴

03/28
2017
软件

快速将Photoshop CC的语言改为英文的办法

今天无意间发现了一个办法,可以快速把Photoshop CC的语言改成英文。虽然后来发现我还是火星了,不过还是发个文章记一下。

在Photoshop CC的安装目录下,找到tw10428.dat这个文件,路径示例:

C:\Program Files\Adobe\Adobe Photoshop CC 2015\Locales\zh_CN\Support Files\

这个文件是Photoshop CC的中文文件,将其改名或者剪切走,然后重新打开Photoshop CC,就可以看到界面已经变成英文的啦:

快速将Photoshop CC的语言改为英文的办法

装逼效果一流。

不过有些下拉菜单里的命令我已经看不懂了……

快速将Photoshop CC的语言改为英文的办法

03/27
2017
其他

【转载】拯救松动的USB接口

前排警告:USB接口是有电的,请断电之后再处理…………

转载并繁转简自墙外http://eucaly61.blogspot.com/2008/03/repair-loose-usb-port.html

如果遇到 USB 接口松动 -- 轻轻一碰 USB 接线就会使 USB 装置失联, 可以试试以下的改善方式 -- 适用于计算机或 HUB 等 USB 接口

首先, 找出松动的方向, 如图, 试试哪个方向比较松

1

如果是 蓝色绿色 的方向较松, 则可以如图将弹片挑起

2

改善后(转载注:挑得太高会插不进去,往下按些就好)

3

如果是 红色 方向较松, 则先将弹片挑出, 整形后再扳回去

4

有时, 蓝色(转载注:应该指下图的蓝色)部份夹持力不足, 也可以加以整形

5

以下则是截取自墙外且繁转简https://tlcheng.wordpress.com/2011/12/04/%E7%A1%AC%E9%AB%94-usb-%E6%8F%92%E6%A7%BD%E6%8E%A5%E8%A7%B8%E4%B8%8D%E8%89%AF%E8%87%AA%E6%95%91%E6%AD%A5%E9%A9%9F/

接着把金属接点的夹片也往外扳一点,这边分别是 DC 5V+ / D+ / D- / GND ,很多电路会用共地设计,所以 GND 可能跟外面金属包覆的部分是导通的。

大部分接触不良通常是 D+ / D- 卡住,所以稍微扳一下就可以了,扳一下卡住的部分就会恢复正常弹力。

如果有铜锈出现,用一字起子平口面将铜锈刮除后,再扳起金属夹片。

【转载】拯救松动的USB接口