10
8
2015
12

ES6 好棒!

本文来自依云's Blog,转载请注明。

SegmentFault 的通知页里的链接总是会在新标签页打开。这对于我来说就多了一个需要关闭的标签页——我本可以在最后一条新通知时不打开新标签页的。我习惯由我自己来控制链接在哪里打开,会根据情况选择在后台新标签页打开或者在当前标签页打开。SegmentFault 通知页这样子在前台标签页打开对于我来说除了烦人之外便毫无用处

然而 SegmentFault 改来改去,最终似乎还是决定像很多国内网站那样让我这种用户厌烦。罢了,是时候让油猴出场了。这次尽情使用 ES6 好了=w=

// ==UserScript==
// @name          SegmentFault Enhancement
// @namespace     http://lilydjwg.is-programmer.com/
// @description   SegmentFault Enhancement
// @include       http://segmentfault.com/*
// @include       https://segmentfault.com/*
// ==/UserScript==

// jshint moz:true

if(location.pathname === "/user/notifications"){
  let elements = document.querySelectorAll('section.stream-list__item a[target]');
  for(let el of elements){
    el.removeAttribute('target');
  }
}

虽然不是第一次使用let了,但for...of是第一次使用。这感觉好棒!跟写了好长时间的 C 之后发现表达力强大的 Python 一样!

现在的 ECMAScript 越来越像语法怪异的 Python 了呢 ;-)

PS: 在网页里写上在新标签页打开有安全隐患的。

Category: Javascript | Tags: python javascript GreaseMonkey ES6 | Read Count: 8044
zbinlin 说:
Oct 15, 2015 03:50:02 PM

_blank 我也不喜欢,很久之前我也特意为了去掉它写了个猴脚:https://bitbucket.org/zbinlin/no_blank

提到 sf,我这里写一个查看用户的结贴率的脚本:https://bitbucket.org/snippets/zbinlin/9qKdg

Avatar_small
依云 说:
Oct 15, 2015 09:54:53 PM

哇,zbinlin 好棒~!

@xuboying 说:
Dec 02, 2015 12:13:38 PM

失效了么?

Avatar_small
依云 说:
Dec 02, 2015 01:58:20 PM

我这里还是好用的呢。

@xuboying 说:
Dec 02, 2015 02:01:35 PM

少贴了右括号:P
missing } in compound statement
开了console发现了

@xuboying 说:
Dec 28, 2015 02:24:16 PM

我给segmentfault.com强制加了ssl后发现你的脚本不工作了,后来发现是没有include https
这个是合并了几个特性的脚本
https://code.csdn.net/snippets/1516973

Avatar_small
依云 说:
Dec 28, 2015 06:46:07 PM

嗯,因为之前 SegmentFault 根本不支持 HTTPS 嘛。自动 HTTPS 跳转我使用的是 HTTPSEverywhere 的用户自定义规则: https://github.com/lilydjwg/HTTPSEverywhereUserRules

@xuboying 说:
Dec 28, 2015 08:58:54 PM

我找了半天也没找到这个自定义的方法原来是写文件啊,我发现这个目录下已经有一些rule了,是HTTPS Finder生成的,但这个插件好像消失了。
看了一下这个库的语法,感觉用别人的语法有潜在的域名重定向危险啊,它应该把语法简化为只能把http转为https,而不是可以修改uri

@xuboying 说:
Dec 28, 2015 09:17:40 PM

用了这个脚本吓得我赶紧把没有关掉的问题都关了

Avatar_small
依云 说:
Dec 28, 2015 11:05:52 PM

有些网站明文和加密访问使用的是不同的域名。


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter

| Theme: Aeros 2.0 by TheBuckmaker.com