小编bel*_*ace的帖子

变异观察者---子树

我正在阅读这篇http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html,看来Chrome的行为与规范形成鲜明对比.如果我正确理解了规范,则为元素定义"子树"意味着应该报告对该元素的子树(包括元素本身)的更改.但是,在执行这段代码时,我什么都没得到.

var observer = new WebKitMutationObserver(function(e){console.log(e);})
observer.observe(document.body, {subtree:true, attributes:true});
document.body.appendChild(document.createElement('div'));
Run Code Online (Sandbox Code Playgroud)

我错过了什么?有人可以详细说明这个吗?谢谢!

webkit chromium mutation-observers

12
推荐指数
3
解决办法
3692
查看次数

以编程方式添加Java代码模板

我喜欢当Eclipse允许我使用Tab键在方法调用中跳转参数时.我希望我的插件提供类似的功能.确切地说,我正在向编辑器中注入一些文本,我想强调特定的语法,让程序员使用Tab键跳转到下一个匹配.

这是一个例子.让我们假设我动态创建了以下代码段:

String a = "bogus string";
int i = a.[?]
Run Code Online (Sandbox Code Playgroud)

我会将其注入编辑器中,我希望它[?]能够突出显示并准备好进行修改(用户可能会输入length()).此外,如果有更多[?]碎片,我希望用户使用Tab移动到下一个.

经过一番研究后,我发现可以使用模板完成.但是,我在网上找不到任何相关的例子.有没有人有这方面的经验?

更新:

我找到了两个可能有用的链接,虽然我仍然无法提出解决方案.

链接一个

链接二

java eclipse eclipse-plugin

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

GNU Prolog断言错误

我是Prolog的新手,但我仍然坚持这个简单的命令.我已经加载了一个没有错误的知识库,每当我尝试断言(甚至帮助)时,我都收到以下消息:

uncaught exception: error(existence_error(procedure,assert/1),top_level/0)
{2}
Run Code Online (Sandbox Code Playgroud)

我究竟缺少什么?赞赏.

prolog gnu-prolog iso-prolog prolog-assert

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

chrome 调度轮事件

我正在尝试在 chrome 中发送轮子事件,但仍然无法成功。我正在使用 WheelEvent 对象,但似乎无法正确“初始化”它。无论我做什么,delta 总是 0。我查看了规范,但没有帮助。更有趣的是,当我实际用鼠标滚轮滚动并尝试调度该事件时,我捕获了该事件,但增量再次为 0。有人遇到过这样的问题吗?这可能是一个错误吗?任何帮助都会很棒!

//dispatching the wheel event
var evt = document.createEvent("WheelEvent");
evt.initEvent("mousewheel", true, true, null, 0, 0, 0, 0, 0, false, false, false, false, 0, null, -120);
window.dispatchEvent(evt)

// catching the wheel event
window.addEventListener('mousewheel', callback, true);
callback = function(evt){
       console.log(evt)
}
Run Code Online (Sandbox Code Playgroud)

events google-chrome mousewheel dispatch

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

Eclipse从.java文件创建CompilationUnit

如何将.java文件加载到CompilationUnit中?例如,假设我当前项目中有一个A.java文件.我想将它加载到CompilationUnit中,然后将其传递给ASTParser.只是将它作为纯文本加载它不是一个选项,因为在这种情况下我似乎不会获得AST中的绑定信息.

java eclipse abstract-syntax-tree compilationunit eclipse-jdt

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

使用 JavaScript 事件模拟悬停

是否可以使用 JavaScript 事件模拟悬停?我尝试在目标元素上注入鼠标悬停事件,但没有运气。

例如,如果有一个带有悬停选择器的链接,是否可以使用 JavaScript 事件“悬停”在它上面?基本上,我想触发 CSS 悬停。你可以假设我不能使用 jQuery。

javascript events hover

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

SQL查询其自然语言描述

是否有任何开源工具可以生成给定SQL查询的自然语言描述?如果没有,一些一般的指针将不胜感激.

我对NLP知之甚少,所以我不确定这是多么困难,虽然我从之前的一些讨论中看到反之亦然转换仍然是一个活跃的研究领域.可能有助于说我将处理的SQL表在任何意义上都不是任意的,但是我的,这意味着我知道每个表及其列的确切语义.

sql nlp transformation

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

OCaml访客模式

我在OCaml中实现了一个简单的类C语言,并且像往常一样,AST是我的中间代码表示.由于我将在树上进行一些遍历,我想实现访问者模式以减轻痛苦.我的AST目前遵循该语言的语义:

type expr = Plus of string*expr*expr | Int of int | ...
type command = While of boolexpr*block | Assign of ...
type block = Commands of command list
...
Run Code Online (Sandbox Code Playgroud)

现在的问题是树中的节点是不同类型的.理想情况下,我会将一个处理节点的函数传递给访问过程; 该过程将打开节点的类型并相应地进行工作.现在,我必须为每个节点类型传递一个函数,这似乎不是最佳解决方案.

在我看来,我可以(1)真正采用这种方法或(2)上面只有一种类型.通常的方法是什么?也许用OO?

ocaml functional-programming abstract-syntax-tree visitor-pattern

5
推荐指数
3
解决办法
1454
查看次数

可重用的Javascript事件对象

我正在制作鼠标点击事件,我试图连续几次将它发送到某个节点.为此,我使用相同的MouseEvent对象,由于某种原因,这种方法不起作用.然而,当我每次手动创建事件时,系统工作.有谁知道这种行为的原因是什么?我试图改变timeStamp,但问题仍然存在.我可以像之前提到的那样解决问题,但我对这个MouseEvent以及相应的调度和处理子系统如何工作感兴趣.我在MDC页面上找到的MouseEvent规范似乎缺少很多信息.

Tnx的帮助!

javascript mouseevent event-dispatching

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

PIL图像转换不使用文件系统

我想用PIL进行图像转换/重写,只需使用RAM内存.我在RAM中有以字节为单位的图像,我想将其转换为其他格式或可能相同.我知道我可以将其保存在具有某些名称的文件系统上,但我想只使用RAM而不触及文件系统.我没有找到任何例子.任何帮助,将不胜感激!谢谢!

python rewriting python-imaging-library

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

Haskell类型错误消息

我对Haskell生成类型错误消息的方式感兴趣.特别是,我对它建议用户可能想要修复的程序表达式的方式感兴趣,以便错误消失.示例应该使这更清楚.考虑第一个例子.

main = zprint 2
zprint x = putStrLn x
Run Code Online (Sandbox Code Playgroud)

相应的错误消息是:

No instance for (Num String)
  arising from the literal `2'
Possible fix: add an instance declaration for (Num String)
In the first argument of `zprint', namely `2'
In the expression: zprint 2
In an equation for `main': main = zprint 2
Run Code Online (Sandbox Code Playgroud)

我解释这个的方式是编译器告诉我应该修复传递的参数2,或者整个函数调用zprint 2,甚至是整个函数调用main = zprint 2,但它会报告putStrLn说我以错误的方式使用它并且我应该使用其他一些功能.同样,我们有以下示例:

main = zprint 2
idn x = x
zprint x = putStrLn (idn x)
Run Code Online (Sandbox Code Playgroud)

消息是一样的: …

error-handling haskell types

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

GTK主要块 - Python

我是GTK的新手,我偶然发现了一个听起来简单的问题,但我找不到解决问题的方法.基本上,调用gtk.main()使我的单线程进程停止.我知道这gtk.main()是阻塞的,但我之前没有打过电话gtk.main(),所以退出主循环不会有任何好处,因为没有循环退出.

即便如此,gtk.main_level()返回0.此外,当我gtk.main()从python命令行尝试时,它也会挂起.我缺少一些基本的东西,有人能指出这个吗?赞赏.

编辑:我需要的Gtk方法是gobject.add_timeout这样的:

gobject.timeout_add(2000, callback)
gtk.main() # This blocks the thread.
Run Code Online (Sandbox Code Playgroud)

python gtk event-loop

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