小编lvi*_*ani的帖子

Firefox中的event.offsetX

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script language="javascript">
function main(){
    var canvas = document.getElementById("canvas");
    canvas.addEventListener("mousemove", function(e){
        if (!e) e = window.event;
        var ctx = canvas.getContext("2d");

        var x = e.offsetX;
        var y = e.offsetY;

        ctx.fillRect(x, y, 1, 1);
    });
}
</script>
</head>
<body onload="main();">
<div style="width: 800px; height: 600px; -webkit-transform: scale(0.75,0.75); -moz-transform: scale(0.75,0.75)">
    <canvas id="canvas" width="400px" height="400px" style="background-color: #cccccc;"></canvas>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

请考虑以上快速而肮脏的例子.请注意我的画布包含一个应用了比例变换的div.以上代码适用于任何基于webkit的浏览器.移动鼠标时,它会在画布上绘制点.不幸的是,它不在Firefox中,因为它的事件模型不支持offsetX/Y属性.如何将(也许)event.clientX(在firefox中也支持)中的鼠标坐标转换为画布相对坐标,同时考虑画布位置,变换等?谢谢,卢卡.

javascript firefox events html5 html5-canvas

47
推荐指数
5
解决办法
4万
查看次数

防止ndk-build删除手动添加的库

我有一个项目正在重新使用预编译的本机库(libocr.so),我没有源文件.我手动将库放在我的项目的libs/armeabi上,一切都很完美.

然后我需要为同一个项目创建一个新的本机库.我把我的源代码作为我的jni文件夹中的Android.mk文件,我使用ndk-buld命令构建它.该库是构建并放置在libs/armeabi文件夹中,但是libocr.so(手动添加的)会自动从那里删除...如何防止libocr.so被删除?

这是我的Android.mk文件:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    := libyuv
LOCAL_SRC_FILES := ycrcbutils.c

include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)

感谢您提前寻求帮助,Luca.

android-ndk

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

理解URLConnection.setReadTimeout()

请考虑以下代码段:

URLConnection connection = target.openConnection();

connection.setConnectTimeout(5000); // 5 sec
connection.setReadTimeout(10000); // 10 sec
Run Code Online (Sandbox Code Playgroud)

是否connection.setReadTimeout设置了STARTING读取数据的最大可用时间,还是可用于完成读取数据的最大时间?

我的理解是,java有10秒钟的时间开始从连接中读取下一个数据字节.完成从连接读取所有数据没有超时,因为我们不知道可能有多大.这是对的吗?

java timeout urlconnection

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

检查对象是否是给定类名的List的实例

鉴于Object o和a String className = "org.foo.Foo",我想检查是否o是实例List<className>

我试过这个但不会编译:

Class<?> cls = Class.forName(className);
if (o instanceof List<cls>){ // this gives error: cls cannot be resolved to a type
  doSomething();
}
Run Code Online (Sandbox Code Playgroud)

请注意我的输入是Object oString className(请注意类型).

java generics instanceof type-erasure

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

仅替换正则表达式匹配的一部分

请考虑以下javascript代码:

"myObject.myMethod();".replace(/\.\w+\(/g, "xxx");
Run Code Online (Sandbox Code Playgroud)

它给" myObjectxxx);"作为" .myMethod("被选中.

现在我只会选择myMethod.换句话说,我想选择.((排除)开头和结尾的任何单词.

谢谢,卢卡.

javascript regex

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

从内存中删除HTML元素(DOM节点)

根据mdn文档,该方法removeChild从DOM中删除一个节点,但它仍然驻留在内存中.我的问题是我也想从内存中删除它.我已尝试过delete操作员,但对象仍在那里......

myCanvas.parentElement.removeChild(myCanvas);  // myCanvas actually removed from DOM
delete myCanvas;  // false. does nothing
alert(myCanvas); // shows HTMLCanvasElement instead of undefined
Run Code Online (Sandbox Code Playgroud)

javascript dom

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

使用Eclipse Juno和J2EE预览服务器的简单Servlet

我正在尝试使用Eclipse Juno创建我的第一个HelloWorld servlet并在J2EE Preview Server中查看它.

这是我的Servlet类:

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class HelloWorld
 */
public class HelloWorld extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public HelloWorld() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html");
        PrintWriter pw = response.getWriter();
        pw.println("<html>");
        pw.println("<head><title>Hello World</title></title>");
        pw.println("<body>"); …
Run Code Online (Sandbox Code Playgroud)

eclipse servlets

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

如何从矩阵SVG中提取位置,旋转和比例

我有一个简单的问题:我想从应用于我的svg元素的变换矩阵中提取平移(tx,ty),旋转(r)和缩放(sx,sy)值.

让我们使用这个例子:

<g
  id="myElement"
  transform="matrix(0.93893241,0.34410162,-0.34410162,0.93893241,363.88475,-76.125919)"
  >... </g>
Run Code Online (Sandbox Code Playgroud)

如果,在javascript我做

document.getElementById("myElement").getCTM()
Run Code Online (Sandbox Code Playgroud)

我可以访问a,b,c,d,e,f值.我如何从那里获得tx,ty,sx,sy和r?谢谢

javascript svg matrix

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

Alpha通道的图像映射

<img src="circle.png" onclick="alert('clicked')"/>
Run Code Online (Sandbox Code Playgroud)

让我们假设circle.png是一个400x400像素的透明背景图像,中间有一个圆圈.

我现在得到的是整个图像区域(400x400px)是可点击的.我想要的是只有圆圈(非透明像素)是可点击的.

当然我知道在这个例子中我可以使用<map>标签和圆形区域,但我正在寻找一种通用的解决方案,它将考虑实际的图像透明度并适用于任何类型的图像(即非常规形状).

我能看到的最复杂的方法是根据每个像素alpha跟踪图像的轮廓,转换为路径(可能简化)并应用为地图.

有没有更有效/直接的方法呢?

html javascript imagemap

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

了解Linux内核和补丁版本

我想更好地了解Linux内核/补丁发布的工作原理.

例如,如果我今天(2013年12月12日)打开www.kernel.org,主要下载(黄色按钮)将我带到最新稳定版"linux-3.12.5.tar.xx".这很清楚.

但如果我进入" https://www.kernel.org/pub/linux/kernel/v3.x/ ",我可以找到(在许多档案中):

(1)linux-3.12.tar.gz

(2)patch-3.12.5.gz

(3)patch-3.12.gz

所以第一个问题:是"linux-3.12.5"=(1)linux-3.12"+"(2)patch-3.12.5?

如果是这样,那么"patch-3.12"(3)是什么?是"linux-3.12"= linux-3.11"+"(3)patch-3.12如上?

谢谢!

linux linux-kernel

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