小编Mar*_*ahn的帖子

将RGB转换为RGBA白色

我有一个十六进制颜色,例如#F4F8FB(或rgb(244, 248, 251))我想要转换成尽可能透明的 rgba颜色(当显示为白色时).合理?我正在寻找一种算法,或者至少想一个算法来解决这个问题.

例如:

rgb( 128, 128, 255 ) --> rgba(   0,   0, 255,  .5 )
rgb( 152, 177, 202 ) --> rgba(  50, 100, 150,  .5 ) // can be better(lower alpha)
Run Code Online (Sandbox Code Playgroud)

想法?


基于Guffa答案的FYI解决方案:

function RGBtoRGBA(r, g, b){
    if((g == null) && (typeof r === 'string')){
        var hex = r.replace(/^\s*#|\s*$/g, '');
        if(hex.length === 3){
            hex = hex.replace(/(.)/g, '$1$1');
        }
        r = parseInt(hex.substr(0, 2), 16);
        g = parseInt(hex.substr(2, 2), 16);
        b = parseInt(hex.substr(4, 2), …
Run Code Online (Sandbox Code Playgroud)

javascript css colors css3 rgba

195
推荐指数
4
解决办法
3万
查看次数

我可以使用null请求或响应定义grpc调用吗?

proto3中的rpc语法是否允许空请求或响应?

例如,我想要相当于以下内容:

rpc Logout;
rpc Status returns (Status);
rpc Log (LogData);
Run Code Online (Sandbox Code Playgroud)

或者我应该只创建一个null类型?

message Null {};

rpc Logout (Null) returns (Null);
rpc Status (Null) returns (Status);
rpc Log (LogData) returns (Null);
Run Code Online (Sandbox Code Playgroud)

protocol-buffers grpc

93
推荐指数
2
解决办法
4万
查看次数

包括来自raw.github.com的js

我有一个github.com演示页面链接到https://raw.github.com/.../master/.../file.js,这样我就不需要总是将.js文件复制到gh-pages每次改变都会分支.这适用于IE以外的每个浏览器,它抱怨:

SEC7112:由于mime类型不匹配,来自https://raw.github.com/cwolves/jQuery-iMask/master/dist/jquery-imask-min.js的脚本被阻止

此投诉来自以下事实:文件是通过以下方式传输的:

X-Content-Type-Options: nosniff
Content-Type: text/plain
Run Code Online (Sandbox Code Playgroud)

这是我无法改变的.

任何人有任何想法如何完成同样的事情?以某种方式允许我链接到master分支中的文件,而不必总是将其推送到gh-pages分支?

实际页面:http://cwolves.github.com/jQuery-iMask/

(次要更新 - 我在这个确切的实例中更改了gh页面以包含.js文件,因此IE不再被破坏,但仍然会喜欢任何反馈:))

javascript git internet-explorer github

55
推荐指数
4
解决办法
2万
查看次数

git://通过代理

我在阻止端口9418(git)的防火墙后面,我正在尝试安装一些显式执行检查的工具git://github.com/...,所以我无法切换到https进行结账.

所以我想知道是否可以通过代理将所有流量重定向到端口9418,如果是这样的话:)

git proxy git-config

51
推荐指数
3
解决办法
3万
查看次数

OSX Lion AppleScript:如何从任务控制中获取当前空间#?

我正在试图弄清楚如何从任务控制中获取当前空间#.来源会有所帮助,但更有帮助的是如何自己解决这个问题的信息.我写过一些苹果脚本,但通常情况下,我似乎需要做一些新的事情(我找不到字典文档),它属于"告诉这个特定应用程序(例如"系统)的类别事件")这个非常具体的事情"我不知道我将如何实现这一点.


特别是我想要做的事情:

讨厌 OSX 10.7中的新任务控制.我希望我的空间"网格"回来,因为我一直使用它.我曾经每隔几秒钟使用箭头键(例如ALT+ )在空格之间导航.现在我坚持使用这个笨重的1x9空间阵列,而不是优雅的3x3网格.我已经重新映射了我的所有空间以使用数字键盘,这部分地解决了问题(因为它是一个3x3网格),但只有当我连接了外部键盘时.

基本上,我希望能够用ALT+ 了,但这样做,我需要检测当前空间#,这样我可以从太空中5开关- > 2,例如.

Dave的回答如下,虽然远比我预期的要详细,但需要编写一个应用程序才能做到这一点(加上它仍然没有完全回答这个问题).如果可能的话,我宁愿把几个键绑定到一个AppleScript上.

macos applescript spaces mission-control

45
推荐指数
4
解决办法
2万
查看次数

Chrome认为99,999与100,000完全不同

当有人发布了一个jsperf基准测试时,我遇到了一个非常有趣的问题,该基准测试与先前的,几乎相同的基准测试相冲突.

Chrome 在这两行之间做了一些截然不同的事情:

new Array(99999);  // jsperf ~50,000 ops/sec
new Array(100000); // jsperf ~1,700,000 ops/sec
Run Code Online (Sandbox Code Playgroud)

基准:http://jsperf.com/newarrayassign/2

我想知道是否有人知道这里发生了什么!

(为了澄清,我正在寻找关于V8内部的一些低级细节,例如它使用不同的数据结构,一个与另一个以及这些结构是什么)

javascript google-chrome

38
推荐指数
2
解决办法
1134
查看次数

关于ES6 Arrow函数中`arguments`的官方信息?

(() => console.log(arguments))(1,2,3);

// Chrome, FF, Node give "1,2,3"
// Babel gives "arguments is not defined" from parent scope
Run Code Online (Sandbox Code Playgroud)

根据Babel(以及我可以告诉TC39的初步建议),这是"无效的",因为箭头函数应该使用其父作用域作为参数.我能找到的唯一信息与此相矛盾的是一条评论说这被TC39拒绝,但我找不到任何支持这一点.

只是在这里寻找官方文档.

javascript ecmascript-6 arrow-functions

38
推荐指数
2
解决办法
6226
查看次数

为什么ES6箭头函数中的`throw`无效?

我只是想找出为什么这是无效的原因:

() => throw 42;
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过以下方式绕过它:

() => {throw 42};
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6 arrow-functions

27
推荐指数
2
解决办法
3077
查看次数

为什么打电话比申请快得多?

我想知道是否有人知道为什么 call这么快apply?在chrome中,它大约快了4倍,在firefox中大约是30倍,我甚至可以制作一个自定义原型,apply2它(在大多数情况下)的运行速度是2 倍apply(从角度来看的想法):

Function.prototype.apply2 = function( self, arguments ){
    switch( arguments.length ){
         case 1:  this.call( self, arguments[0] );                                                                                                                               break;
         case 2:  this.call( self, arguments[0], arguments[1] );                                                                                                                 break;
         case 3:  this.call( self, arguments[0], arguments[1], arguments[2] );                                                                                                   break;
         case 4:  this.call( self, arguments[0], arguments[1], arguments[2], arguments[3] );                                                                                     break;
         case 5:  this.call( self, arguments[0], arguments[1], arguments[2], arguments[3], arguments[4] );                                                                       break;
         case 6:  this.call( self, arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5] );                                                         break;
         case 7:  this.call( …
Run Code Online (Sandbox Code Playgroud)

javascript

20
推荐指数
1
解决办法
1405
查看次数

让git从不推送一次提交?

我不认为这是可能的,但认为有人可能对如何实现这一点有一个很好的想法:

我有一个我检查过的项目,在我接手之前很久就存在了.我在各种文件中进行了大约十几次更改,我从不想签入(它们都是配置更改).

有没有办法提交这组更改,然后再也没有实际推送那个提交?我知道这听起来很奇怪:)

澄清:

我希望这些更改保留在我的工作目录中,我需要它们才能使应用程序在本地运行.我希望能够继续提交围绕它们的其他更改,甚至是同一文件中的更改,但从不将配置更改推送到其他任何地方......

这有点像我想要的每次推动之前:

  • 樱桃挑选并藏匿这一个提交
  • 改变一个承诺
  • 将此存储重新应用于我的代码库

git

18
推荐指数
1
解决办法
1525
查看次数