我有以下HTML:
<html>
<head><title>Title</title></head>
<body>
<div id='div2'>
<a href='#'>1</a>
<div id='div1'>
<a href='#'>2</a>
</div>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
...以及以下Javascript代码,我正在通过Greasemonkey运行:
var nodes = document.body.getElementsByTagName('a');
for (var i = 0; i < nodes.length; i++) {
var node = nodes[i];
node.parentNode.removeChild(node);
}
Run Code Online (Sandbox Code Playgroud)
我希望它能找到并删除所有A标签; 相反,它找到第一个,但不是第二个.据我所知,第二个A标签的嵌套方式有困难.
有人可以让我知道如何删除所有标签,使用getElementsByTagName?有理由我不想使用XPath,如果可能的话.
我正在Rails 3.1后端构建一个backbone.js应用程序.我正在使用CoffeeScript编写骨干类,并使用Jasmine(通过jasmine-headless-webkit)进行测试.
给出以下(部分)树:
.
??? app
? ??? assets
? ? ??? javascripts
? ? ? ??? views
? ? ? ??? avia_view.js.coffee
??? spec
? ??? javascripts
? ? ??? views
? ? ??? avia_view_spec.js.coffee
Run Code Online (Sandbox Code Playgroud)
......我希望avia_view_spec.js.coffee知道Avia.AviaView,这是定义的avia_view.js.coffee.
但是,我从运行中得到以下输出bundle exec jasmine-headless-webkit:
Running Jasmine specs...
F
Avia.AviaView render creates a new MatricesView . (/home/duncan/avia/spec/javascripts/views/avia_view_spec.js.coffee:10)
ReferenceError: Can't find variable: Avia in /home/duncan/avia/spec/javascripts/views/avia_view_spec.js.coffee (line ~5)
ReferenceError: Can't find variable: Avia in /home/duncan/avia/spec/javascripts/views/avia_view_spec.js.coffee (line ~10)
Run Code Online (Sandbox Code Playgroud)
我jasmine.yml …
我正在编写一些Javascript类的规范(backbone.js视图,用Coffeescript编写),我想确保一个视图构建另一个视图.
我试图通过监视构造函数来做到这一点,如下所示:
describe 'Avia.AviaView', ->
beforeEach ->
@aviaView = new Avia.AviaView()
@matricesView = new Backbone.View()
spyOn(Avia.MatricesView, 'constructor').andReturn @matricesView
describe 'initialize', ->
beforeEach ->
@aviaView.initialize()
it 'creates a new MatricesView ', ->
expect(Avia.MatricesView.constructor).toHaveBeenCalledOnce()
Run Code Online (Sandbox Code Playgroud)
initialize()对AviaView 的调用肯定会导致调用MatricesView构造函数,礼貌这一行:
new Avia.MatricesView($("#tabs-3")).initialize()
Run Code Online (Sandbox Code Playgroud)
它确实有效; 如果我手动运行应用程序,我可以看到正在调用的构造函数initialize().但是我的Jasmine规范失败了:
Running Jasmine specs...
F
Avia.AviaView initialize creates a new MatricesView . (/Users/dev/avia/spec/javascripts/views/avia_view_spec.js.coffee:13)
Expected constructor to be called exactly once, but was called '0' times (line ~14)
expect(Avia.MatricesView.constructor).toHaveBeenCalledOnce();
FAIL: 1 test, 1 failure, 0.008 secs.
Run Code Online (Sandbox Code Playgroud)
我和几位同事交谈了,他们同意这应该有用......有人能建议一种监视施工人员的好方法吗?
我有一个包含转义网址的字符串:
http%3A%2F%2Fexample.com%3Ffoo%3Dbar+baz
Run Code Online (Sandbox Code Playgroud)
我正在尝试将其解码为以下内容:
http://example.com?foo=bar+baz
Run Code Online (Sandbox Code Playgroud)
但是,我找不到Drakma导出的任何合适的功能.我可以带像这样的代码:
* url-string
"http://example.com?foo=bar+baz"
* (drakma:url-encode url-string :utf-8)
"http%3A%2F%2Fexample.com%3Ffoo%3Dbar%2Bbaz"
Run Code Online (Sandbox Code Playgroud)
......所以我认为我走在正确的轨道上.如果有人能提供正确方向的推动我会很感激:-)我正在使用SBCL 1.0.54,它是从64位Linux Mint 13上的源代码构建的.
如果它有助于澄清我正在尝试做什么,在Ruby中,我会做以下事情:
> uri_string = "http%3A%2F%2Fexample.com%3Ffoo%3Dbar+baz"
=> "http%3A%2F%2Fexample.com%3Ffoo%3Dbar+baz"
> URI.decode uri_string
=> "http://example.com?foo=bar+baz"
Run Code Online (Sandbox Code Playgroud) 我正在使用cl-irc库连接到Slack,通过Slack提供的IRC网关.
但是,当我尝试使用以下命令启动消息循环时,我收到以下错误read-message-loop:
error while parsing arguments to DESTRUCTURING-BIND:
invalid number of elements in
("duncan_bayne" "Welcome" "to" "Slack" "IRC" "Gateway"
"server" "duncan_bayne!~duncan_bayne@1.2.3.4")
to satisfy lambda list
(CL-IRC:NICKNAME CL-IRC::WELCOME-MESSAGE):
exactly 2 expected, but 8 found
[Condition of type SB-KERNEL::ARG-COUNT-ERROR]
...
Backtrace:
0: ((:METHOD CL-IRC::DEFAULT-HOOK (CL-IRC:IRC-RPL_WELCOME-MESSAGE)) #<CL-IRC:IRC-RPL_WELCOME-MESSAGE irc.tinyspeck.com RPL_WELCOME {1007FC6293}>) [fast-method]
1: ((:METHOD CL-IRC::APPLY-TO-HOOKS (T)) #<CL-IRC:IRC-RPL_WELCOME-MESSAGE irc.tinyspeck.com RPL_WELCOME {1007FC6293}>) [fast-method]
2: ((:METHOD CL-IRC:IRC-MESSAGE-EVENT (T CL-IRC:IRC-MESSAGE)) #<unavailable argument> #<CL-IRC:IRC-RPL_WELCOME-MESSAGE irc.tinyspeck.com RPL_WELCOME {1007FC6293}>) [fast-method]
3: ((:METHOD CL-IRC:READ-MESSAGE (CL-IRC:CONNECTION)) #<CL-IRC:CONNECTION myob.irc.slack.com {10068E8ED3}>) …Run Code Online (Sandbox Code Playgroud) 我正在为不使用Make 的应用程序(赛普拉斯)创建一个FreeBSD端口; 相反,它使用NPM:
npm run binary-build-linux
cd cli
npm run build
Run Code Online (Sandbox Code Playgroud)
我可以看到两个选项:
我想知道是否有我错过的第三个选项:修改我的端口的Makefile以运行一系列shell命令来代替Makefile?读过搬运工的手册后,我看不出有什么方法可以做到这一点.
我创建了一个安装项目来部署Silverlight + WCF Web应用程序.一切都很好,除了使用默认文档创建应用程序default.aspx.
有人可以告诉我如何 - 甚至是否可能 - 设置安装项目以指定默认文档应该是index.html什么?
我正在编写一个程序,能够识别关于面部的以下内容:
而不是从头开始开发这一功能(这是所以不是我的领域)我很想能够使用第三方库.
我希望能够在Linux和Windows上运行生成的软件(按重要性顺序),但乞丐不能选择:-)
OSI批准的许可证会很好,但是可以接受专有许可证.
Ruby或Common Lisp绑定会很棒,但C API也可以.
我非常感谢提供此功能的任何建议(支持或反对特定库).
编辑补充说:该软件的目的是识别婴儿需要喂食的迹象,并发出温和的警报以唤醒沉睡的父母.如果可能的话,这可能是一个比让婴儿变得饥饿并开始哭泣更好的方法,然后在喂奶前让婴儿平静下来.
www我正在尝试从项目内的目录中使用 Hunchentoot 提供静态文件。我的接受者定义为:
(defvar *acceptor* (make-instance 'easy-acceptor
:port 4242
:document-root (truename "./www/")))
Run Code Online (Sandbox Code Playgroud)
然后我开始:
(start *acceptor*)
Run Code Online (Sandbox Code Playgroud)
接受器可以工作,因为我可以使用它define-easy-handler来创建根页面:
(define-easy-handler (index :uri "/") ()
(with-html-output-to-string (_)
(:html
(:head
(:title "Hello world")
(:body
(:h1 "Hello world!))))))
Run Code Online (Sandbox Code Playgroud)
...当我浏览到http://localhost:4242/时,我看到了该页面。
但我的目录中没有提供静态文件www。例如,如果我创建www/jquery-3.2.1.min.js并浏览到http://localhost:4242/jquery-3.2.1.min.js我会收到 404。
127.0.0.1 - [2017-08-11 08:08:02] "GET /jquery-3.2.1.min.js HTTP/1.1" 404 355 "-" "Mozilla/5.0 (X11; FreeBSD amd64; rv:54.0) Gecko/20100101 Firefox/54.0"
HELLOWORLD> (directory (make-pathname :directory '(:relative "www") :name :wild :type "js"))
(#P"/usr/home/duncan/code/helloworld/www/jquery-3.2.1.min.js")
Run Code Online (Sandbox Code Playgroud) common-lisp ×4
coffeescript ×2
jasmine ×2
c ×1
dom ×1
drakma ×1
freebsd ×1
greasemonkey ×1
hunchentoot ×1
iis ×1
irc ×1
javascript ×1
porting ×1
ruby ×1
sbcl ×1
slack ×1
url ×1