小编Mic*_*zlo的帖子

如何在JavaScript中检查空值?

如何在JavaScript中检查空值?我写了下面的代码,但它没有用.

if (pass == null || cpass == null || email == null || cemail == null || user == null) {      

    alert("fill all columns");
    return false;  

}   
Run Code Online (Sandbox Code Playgroud)

我怎样才能在JavaScript程序中找到错误?

javascript null compare

519
推荐指数
13
解决办法
106万
查看次数

如何在iPhone数字键盘上显示"完成"按钮

数字键盘上没有"完成"按钮.当用户完成在文本字段中输入数字信息时,如何使数字键盘消失?

我可以使用默认键盘获得"完成"按钮,但是用户必须切换到数字键才能输入数字.有没有办法在数字键盘上显示"完成"按钮?

iphone user-input ios

233
推荐指数
10
解决办法
14万
查看次数

我们可以修改Font Awesome旋转速度吗?

我的网站上有一个旋转装置,显示的代码如下:

<link rel="stylesheet"
 href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css"/>

<i class = "fa fa-cog fa-5x fa-spin"></i>
Run Code Online (Sandbox Code Playgroud)

就个人而言,我认为齿轮的速度太快了.我可以用CSS修改它吗?

html css animation css-animations font-awesome

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

根据事件对数字进行分组?

鉴于以下三个数字序列,我想弄清楚如何对数字进行分组以找到它们之间最密切的关系.

1,2,3,4
4,3,5
2,1,3
...
Run Code Online (Sandbox Code Playgroud)

我不确定我正在寻找的算法是什么,但我们可以看到与某些数字的关系比与其他数字的关系更强.

这些数字一起出现两次:

1 & 2
1 & 3
2 & 3
3 & 4
Run Code Online (Sandbox Code Playgroud)

一起一次:

1 & 4
2 & 4
3 & 5
4 & 5
Run Code Online (Sandbox Code Playgroud)

因此,例如,我们可以看到必须存在关系,1, 2, & 3因为它们一起出现至少两次.你也可以说3 & 4它们密切相关,因为它们也会出现两次.但是,算法可能会选择[1,2,3](过度[3,4]),因为它是一个更大的分组(更具包容性).

如果我们将最常用的数字组合在一个组中,我们可以形成以下任何分组:

[1,2,3] & [4,5]
[1,2]   & [3,4]   & [5]
[1,2]   & [3,4,5]
[1,2]   & [3,4]   & [5]
Run Code Online (Sandbox Code Playgroud)

如果允许重复,您甚至可以得到以下组:

[1,2,3,4] [1,2,3] [3,4] [5]
Run Code Online (Sandbox Code Playgroud)

我不能说哪种分组最"正确",但所有这四种组合都找到了不同的方法来对这些数字进行半正确分组.我不是在寻找一个特定的分组 - 只是一个通用的集群算法,它运行得相当好并且易于理解.

我确信还有很多其他方法可以使用事件计数来对它们进行分组.什么是这些良好的基础分组算法?Go,Javascript或PHP中的样本是首选.

algorithm go graph-algorithm

34
推荐指数
2
解决办法
867
查看次数

如何使用Fabric.js实现画布平移

我有一个Fabric.js画布,我想实现软件包通常使用"手动"工具进行的全画布平移.当您按下其中一个鼠标按钮,然后在按住鼠标按钮的同时在画布上移动,并且画布的可见部分会相应地更改.

您可以在此视频中看到我想要实现的目标.

为了实现这个功能,我编写了以下代码:

$(canvas.wrapperEl).on('mousemove', function(evt) {
    if (evt.button == 2) { // 2 is the right mouse button
        canvas.absolutePan({
            x: evt.clientX,
            y: evt.clientY
        });
    }
});
Run Code Online (Sandbox Code Playgroud)

但它不起作用.你可以在这个视频中看到会发生什么.

如何按顺序修改代码:

  1. 如果像第一个视频一样平移工作?

  2. 对于事件处理程序来消耗事件?当用户按下或释放鼠标右键时,它应该阻止上下文菜单出现.

javascript canvas panning fabricjs

18
推荐指数
2
解决办法
7899
查看次数

Java字符串ReplaceAll和ReplaceFirst在替换文本的$符号处失败

我写了这段代码:

public static void main(String args[]) throws Exception {
    String template = "The user has spent amount in a day";
    String pattern = "amount";
    String output = template.replaceAll(pattern, "$ 100");
    System.out.println(output);
}
Run Code Online (Sandbox Code Playgroud)

这是我运行时发生的事情:

Exception in thread "main" java.lang.IllegalArgumentException: Illegal group reference
        at java.util.regex.Matcher.appendReplacement(Matcher.java:713)
        at java.util.regex.Matcher.replaceAll(Matcher.java:813)
        at java.lang.String.replaceAll(String.java:2190)
        at demo.BugDemo.main(BugDemo.java:16)
Java Result: 1
Run Code Online (Sandbox Code Playgroud)

我正在读取文件中的数据.我应该转义$文件数据中的所有符号,还是这是一个不必要的过程?还有其他类或库来处理这种情况吗?

在替换文本中使用特殊符号(而不是在正则表达式中)有什么问题?

笔记:

  • 我不想检查每个角色逃脱.这就是我问这个问题的原因.

  • 我正在使用Java 6.

java regex replace

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

用Java构建数学游戏

我正在为java构建一个数学游戏,根据我的任务细节,我被困在这个部分.规则很简单:你必须只使用每个数字一次,只使用从用户读取的4个数字来找到一个方程式来获得24.

例如,对于数字4,7,8,8,可能的解决方案是:(7-(8/8))*4 = 24.

大多数4位数组可用于导致24的多个方程中.例如,输入2,2,4,7可以多种方式使用以获得24:

2 + 2*(4 + 7)= 24

2 + 2*(7 + 4)= 24

(2 + 2)*7-4 = 24

(2*2)*7-4 = 24

2*(2*7)-4 = 24

还有4个数字的组合不能导致任何等于24的等式.例如1,1,1,1.在这种情况下,您的程序应该返回没有可能等于24的等式.

注意:虽然我们将在1到9之间输入4个整数,但我们将使用双精度来计算所有操作.例如,数字3,3,8,8可以组合成公式:8 /(3-8/3)= 24.

工作流程:您的程序应该读取用户的4个数字并输出一个导致24的公式.算法应该枚举4个数字的所有可能顺序,所有可能的组合和所有可能的公式.

这导致了数字a,b,c,d和运算符的64种排列的24种排列+-/*.我如何得出这个结论是4 ^ 3 4个算子只有3个填充点在等式中.除了今天,我在编写评估方法时遇到问题,并且还要考虑方程中的父类.

这是我的代码:

public static void evaluate(cbar [][] operations , double [][] operands)
{
    /*
    This is the part that gets me how am I supposed to account
    for parentases and bring all these expressions togather to
    actually form and equation.
    */
}
Run Code Online (Sandbox Code Playgroud)

java algorithm math

12
推荐指数
2
解决办法
2465
查看次数

图像缩放以鼠标位置为中心

我正在用Fabric.js编写一个脚本来缩放当前鼠标位置的图像.我已经取得了一些进展,但某处出现了错误.

案例1:将鼠标放在一个位置并使用鼠标滚轮进行缩放.

结果:完美地工作,图像放大该特定像素.

案例2:在一个位置放大一点(使用鼠标滚轮放大3-5倍),然后将鼠标移动到新位置并放大.

结果:第一个点工作正常,但移动到另一个点并缩放后,图像位置不正确.

我的代码在这个小提琴:

https://jsfiddle.net/gauravsoni/y3w0yx2m/1/

我怀疑图像定位逻辑有问题:

imgInstance.set({top:imgInstance.getTop()-newMousY,left:imgInstance.getLeft()-newMousX});
Run Code Online (Sandbox Code Playgroud)

出了什么问题?

html javascript graphics canvas fabricjs

11
推荐指数
1
解决办法
1万
查看次数

服务器发起的请求

我知道HTTP是一种请求 - 响应协议.简而言之,我的问题是客户端向服务器发出请求以启动长时间运行的进程,并且我想通过包含进度信息的简单JSON消息通知客户端进度.

在HTTP/1.1中,我知道我可以使用WebSocket或服务器发送的事件(SSE)或长轮询.

现在我知道HTTP/2还不支持WebSocket.

我的问题是,通过HTTP/2处理此类事情的最佳方式是什么?

在HTTP/2中是否有任何我不知道的新事物来处理服务器发起的请求?

如果重要的话,我正在使用Go语言.

http go http2

11
推荐指数
2
解决办法
1701
查看次数

为不同的对象重新创建信息元素或隐藏它们?

目前,当我使用jQuery显示不同的元素时,我将从头开始重新创建它们并将它们添加到页面中.

我已经到了一个点,我希望用户能够检查一个元素上的一个框,然后单击一个按钮以查看一些不同的信息,然后能够切换回来看到仍然检查的前一个框.

由于我每次用户切换时都在制作新元素,因此无法以直接的方式进行.

我想知道重绘元素或修改CSS display属性是否更好.

我可以看出为什么隐藏元素会有所帮助,但我不确定是否有必要在屏幕上保留~150个元素并让它们不显示.

这是我到目前为止:

https://jsfiddle.net/W4Km8/7767/

此代码更改信息行的颜色:

$("#table").on("click", ".on", function() {
    $(this).removeClass("on");
    $(this).addClass("off");
});
$("#table").on("click", ".off", function() {
    $(this).addClass("on");
    $(this).removeClass("off");
});
Run Code Online (Sandbox Code Playgroud)

问题是,如果您查看另一组信息行然后返回,则会重置行颜色.

html javascript css jquery display

11
推荐指数
1
解决办法
90
查看次数