Simple is Happiness
Less is more
JavaScript
JS动态滑动切换到页面指定位置
by ourjs keys JS学习 JavaScript 1527906178548
将页面动态划到指定的位置。

浏览器:IE11以上

window.scroll({
  top: 2500, 
  left: 0, 
  behavior: 'smooth' 
});
// Scroll certain amounts from current position 
window.scrollBy({ 
  top: 100, // could be negative value
  left: 0, 
  behavior: 'smooth' 
});
如何通过网页、客户端、手机APP、路由器查找OnceAir NAS网盘的内网访问地址
OnceAir是一款可在局域内使用的超小型NAS网盘。功耗在0.6~5W之间,相比x86服务器每年可节省数百元电费。连上路由器,即可搭建私有云笔记和网盘系统,下面这篇文章将介绍如何查找 OnceAir 的访问地址。
JavaScript用new Image实现内网服务器端口扫描
by ourjs keys JS学习 JavaScript 1521533116395
有这样一个场景,要扫描内网的某个服务,只能通过前端来实现。已知服务器的端口号,不知道内网的IP网段。

首先ajax是不能用的,因为网页与目标服务器地址不一致,跨域了。

其次jsonp也不好用,因为现在浏览已经开始限制手动用脚本发jsonp获取获服务器信息了。

最后只能用 Image 来解决了。
用jQuery创建一个可编辑的SELECT下拉控件(HTML/CSS)
by ourjs keys JS学习 JavaScript 1517748155552
普通的SELECT控件只能选择,不能编辑,这里可以用JS代码来实现这个功能。基本原理是在select控件上面添加一个input盖住,当select改变时自动更新input的值。

<div class="select-editor">
  <select>
    <option value="OPTION 1">OPTION 1</option>
    <option value="OPTION 2">OPTION 2</option>
    <option value="OPTION 3">OPTION 3</option>
    <option value="OPTION 4">OPTION 4</option>
  </select>
  <input type="text" name="host" value="" />
</div>
JavaScript数组从头开始的位置插入新元素或删除第一个元素
by ourjs keys JS学习 JavaScript 1515826467190
很多与数组有关的任务听起来很简单,但实际情况并不总是如此,而开发人员在很多时候也用不到他。最近我碰到了这样一个需求: 
关于数的操作用得最多还是push/pop等。但有时我们也需要将一个元素插入到现有数组的特定索引处。使用 splice 即可

var arr = [1,2,3]
arr.splice(0,0,'number')
console.log(arr)
Node.JS中UDP打洞穿透内网路由,架设内网服务器技术详解及源码
by ourjs keys JS学习 JavaScript 1514948350188
实现基于TCP协议的p2p“打洞”过程中,最主要的问题不是来自于TCP协议,而是来自于来自于应用 程序的API接口。这是由于标准的伯克利(Berkeley)套接字的API是围绕着构建客户端/服务器程序 而设计的,API允许TCP流套接字通过调用connect()函数来建立向外的连接,或者通过listen()和 accept函数接受来自外部的连接,但是,API不提供类似UDP那样的,同一个端口既可以向外连接, 又能够接受来自外部的连接。而且更糟的是,TCP的套接字通常仅允许建立1对1的响应,即应用程 序在将一个套接字绑定到本地的一个端口以后,任何试图将第二个套接字绑定到该端口的操作都会 失败。
40行JavaScript代码实现的3D旋转魔方动画效果
by ourjs keys JS开源 JavaScript 1509929950688
这是2016年JS1k上传的作品,用几十行代码实现的一个3D旋转魔方: 

正则中test、exec、match的简单区别,以及括号的用法
by ourjs keys JS学习 JavaScript 1502527964778

1、当正则表达式无子表达式,并且定义为非全局匹配时,exec和match执行的结果是一样,均返回第一个匹配的字符串内容;

2、当正则表达式无子表达式,并且定义为全局匹配时,exec和match执行,做存在多处匹配内容,则match返回的是多个元素数组;

3、当正则表达式有子表示时,并且定义为非全局匹配,exec和match执行的结果是一样如上边的第5种情况;

4、当正则表达式有子表示时,并且定义为全局匹配,exec和match执行的结果不一样,此时match将忽略子表达式,只查找全匹配正则表达式并返回所有内容,如上第6种情况;

也就说,exec与全局是否定义无关系,而match则于全局相关联,当定义为非全局,两者执行结果相同

Linux下用node.js提取Word(doc/docx)/PDF文本内容
by kris keys JS学习 JavaScript 1497519067670
想要做全文搜索引擎,则需要将word/pdf等文档内容提取出来。对于pdf有xpdf等一些开源方案。但Word文档的情况则会复杂一些。 
我们这里使用了 antiword 开源软件,来提取word2003以前版本的内容,安装同样非常简单:

apt-get install antiword
用JavaScript获取当月第一天和最后一天
by ourjs keys JS学习 JavaScript 1496733869224

获取当月的第一天和当月的最后一天其实还挺麻烦的,因为每个月天数可能不一样。不过借助 Date 对象则很容易实现:

当月第一天和最后一天

var date = new Date(), y = date.getFullYear(), m = date.getMonth();
var firstDay = new Date(y, m, 1);
var lastDay = new Date(y, m + 1, 0);

 近期热门 - 点击最多
  1. 使用node.js\Express\TypeScript\Nodemon和EsLint创建项目,并通过babel导入import绝对路径
  2. Rust 中的闭包及捕获上下文环境变量使用和更改及闭包的引用
  3. Flex布局基础概念及入门实例教程
  4. 纯CSS实现圆形动画进度百分比饼图Percentage Circle with Animation
  5. puppeteer等自动化测试框架如何判断CSS动画结束animation end
  6. Kubernetes/k8s/docker常用命令实例简单介绍教程
  7. 用Node.JS写一个简单版的类似pm2\forever的守护进程并记录错误日志
  8. MongoDB起步入门教程使用Node.JS的Promise方式查找数据
  9. Node.JS连接MySQL数据库执行增删改查提示ER_NOT_SUPPORTED_AUTH_MODE: Client does not support;如何在@mysql/xdevapi执行SQL
  10. NodeJS在Windows上使用OLE/COM/ActiveXObject对象连接ADODB数据库,操作Application.Excel、运行VBA宏并另存为网页

  全端社区 - 最新回复
  1. 美国历年各季度GDP经济数据,当进入连续2季度为负的技术衰退时原油黄金等大宗商品的走势如何?
  2. puppeteer窗口最大化及改变窗口大小
  3. 使用node.js\Express\TypeScript\Nodemon和EsLint创建项目,并通过babel导入import绝对路径
  4. Rust中执行node.js/python/cmd进程:Command::spawn与output和status执行方式区别
  5. Electron在npm/yarn安装问题:1Electron failed to install correctly 2path.txt无法找到 3 electron-v19.0.8-win32-x64无法下载等问题
  6. npm/yarn/git安装时报错:self signed certificate in certificate chain
  7. Rust 中的闭包及捕获上下文环境变量使用和更改及闭包的引用
  8. node.js能否使用path.join安全地拼接url网址
  9. 一号互联:全场景赋能,助力客户服务提质提效
  10. 小A一号互联,打造全场景一体化智能客服平台

  开源的 OurJS
OurJS开源博客已经迁移到 OnceOA 平台。

  关注我们
扫一扫即可关注我们:
OnceJS

OnceOA