小编Alo*_*oso的帖子

Apache服务器(xampp)无法在Windows 10(端口80)上运行

我已经安装了Windows 10 Insider Program.一切正常,除了Apache.当我尝试启动它时,它表示端口80被阻止.有没有办法取消阻止它或告诉Apache使用另一个端口?

我之前使用的是Windows 7.我在使用Skype的端口80时遇到了麻烦,但我已将其禁用.

apache connection webserver

82
推荐指数
7
解决办法
13万
查看次数

javascript:上传图片文件并将其绘制到画布中

我在一个Web应用程序上工作,用于绘制图像.我使用CANVAS元素和javascript来绘制它,但我有一个问题:如何从用户的PC加载图像并在画布上绘制?我不想将它保存在服务器上,只在网页上保存!

这是代码的缩短版本(完整代码太长):

HTML:

Open file: <input type="file" id="fileUpload" accept="image/*" /><br />
<canvas id="canvas" onmousemove="keepLine()" onmouseup="drawLine()" onmousedown="startLine()" width="900" height="600" style="background-color:#ffffff;cursor:default;">
  Please open this website on a browser with javascript and html5 support.
</canvas>
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

var x = 0;
var y = 0;
var clicked = false;

var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");

context.strokeStyle = "black";
context.lineCap = "round";

canvas.addEventListener('mousemove', function(e) { getMousePos(canvas, e); }, false);

takePicture.onchange = function (event) {
  var files = event.target.files,
    file;
  if (files && files.length …
Run Code Online (Sandbox Code Playgroud)

javascript html5 canvas image-uploading

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

Javascript - 获取任何键盘布局的关键描述

对于富Web应用程序,我需要键盘快捷键.因为有许多不同的键盘布局,所以它们必须是可配置的.不幸的是,我无法找到一种方法将键盘事件映射到人类可读的快捷方式名称,如Ctrl + Alt + YAlt + \.

keypress事件是无用的,因为它不会触发所有键.以下是一些keydown事件属性:

  • charCode:仅适用于可打印字符.据MDN称,已弃用
  • code:Works,但忽略键盘布局.当我按Z键时,我接上code: "KeyY"了德语键盘.
  • key:Works,但根据修饰符给出不同的结果.E. g.Shift + 3 key: "§"在我的键盘和key: "#"大多数美国键盘上产生.
  • keyCode:值不是唯一的.Ä,Ö,Ü或^收益率keyCode: 0.据MDN称,已弃用
  • which:就像keyCode,价值不是唯一的.据MDN称,已弃用
  • altKey,ctrlKey,metaKey,shiftKey:有用用于检测修饰键

我该怎么做?在不知道用户的键盘布局的情况下甚至可能吗?

javascript events keyboard-shortcuts keyboard-events

9
推荐指数
1
解决办法
1053
查看次数

Date对象的类型

我刚刚在W3Schools上阅读了关于JS中类型转换的这篇文章.有:

有3种类型的对象:

  • 宾语
  • 日期
  • 排列

这让我很困惑,因为据我所知,Date对象和任何其他对象(typeof (new Date())返回"object")之间没有任何区别.首先,我认为这是特殊的,因为它包含本机代码,但有许多本机代码的函数.

这篇文章错了吗?或者任何人都可以告诉我为什么这个Date对象如此特别以至于它被认为是一种单独的对象?

javascript date

7
推荐指数
1
解决办法
7288
查看次数

意外的自动取消引用行为

当尝试在 rust 中实现双链表时,我发现以下意外错误

if let Some(link) = self.tail.take() {
    let x = link.borrow_mut();
    link.borrow_mut().next = Some(node.clone());
} else { ... }
Run Code Online (Sandbox Code Playgroud)

这里链接被推断为Rc<RefCell<Node<..>>>和编译器说:

不能将不可变的局部变量借用link为可变的。

试过之后,我猜是什么时候use std::borrow::BorrowMut,错误发生了。

// compiles
fn test1() {
    let a = Rc::new(RefCell::new(1));
    let b = RefCell::new(1);
    b.borrow_mut();
    a.borrow_mut();
}

// doesn't compile
fn test2() {
    use std::borrow::BorrowMut; // inserted this import!

    let a = Rc::new(RefCell::new(1));
    let b = RefCell::new(1);
    b.borrow_mut();
    a.borrow_mut();
}
Run Code Online (Sandbox Code Playgroud)

这里test2()编译失败。我想知道为什么它会这样工作。

dereference rust

6
推荐指数
1
解决办法
93
查看次数

@ParameterizedTest在IntelliJ IDEA 2017.3中无法解析

我是JUnit测试的新手,我想在IntelliJ IDEA 2017.3.3中创建一个参数化测试。所以我添加了JUnit 5:

添加JUnit 5

然后IntelliJ下载org.junit.jupiter:junit-jupiter-api:5.0.0。现在,@Test正在工作,但@ParameterizedTest没有。它说“无法解析符号'ParameterizedTest'”。与相同@ValueSource

无法解析符号“ ParameterizedTest”

码:

import org.junit.jupiter.api.*;

class SSTest {

    @ParameterizedTest
    @ValueSource(ints = {1, 2, 3})
    void testSlowSort(int arg) {

    }

    @Test
    void testSort() {

    }

}
Run Code Online (Sandbox Code Playgroud)

PS:同样org.junit.jupiter.params缺少包装。否则,IntelliJ将自动导入它。

我希望任何人都可以帮助我解决此问题。我不使用Maven,Gradle等,而仅使用Java。

java junit intellij-idea parameterized-unit-test

3
推荐指数
2
解决办法
1252
查看次数

javascript函数中的奇怪行为

这个javascript应运行函数func len次数,然后返回它是否一直成功.相反,for只要func返回false ,循环就会被取消.怎么解释这个?(jsfiddle)

function do_something(func, len) {
    var res = true;
    for (var i = 0; i < len; i++) {
        res = res && func(i);
    }
    return res == true;
}

do_something(function(x) {
    console.log(x);
    return false;
}, 5);

do_something(function(x) {
    console.log(x);
    return true;
}, 5);
Run Code Online (Sandbox Code Playgroud)

我希望0, 1, 2, 3, 4, 0, 1, 2, 3, 4,但输出看起来像这样:

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

javascript for-loop

2
推荐指数
1
解决办法
53
查看次数

在 Rust 的 match arm 中调用多个函数

我目前有一个匹配语句的形式

match ball.side {
    Side::Left => x(), 
    Side::Right => y(), 
}
Run Code Online (Sandbox Code Playgroud)

但我需要的是类似的东西

match ball.side {
    Side::Left => x(),a(), 
    Side::Right => y(), b(), 
}
Run Code Online (Sandbox Code Playgroud)

当然这不会编译,但是我怎么能让这种序列起作用呢?我知道我也可以只使用if语句,但我很好奇如何通过匹配来解决这个问题。

match rust

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