小编Xah*_*Lee的帖子

如何将参数传递给事件的处理程序

如何将参数传递给事件的处理程序?

这是我想要做的,不起作用:

for (var i = 0; i < myobj.length; i++) {
myobj[i].onmouseover = myfun(myobj[i]);
}
Run Code Online (Sandbox Code Playgroud)

以下不起作用.

myobj[i].onmouseover = myfun.call(myobj[i]);
myobj[i].onmouseover = function () {myfun(myobj[i]);};
myobj[i].onmouseover = function () {myfun.call(myobj[i]);}; 
Run Code Online (Sandbox Code Playgroud)

我主要感兴趣的是它为什么不起作用,以及相同风格的解决方案.

谢谢.

javascript-events

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

创建zip而不记录根路径; 编程

假设我要压缩这个目录〔c:/ Users/xah/ErgoEmacs_Source/ergoemacs/build-util /〕

我希望输出目录是〔c:/ Users/xah/xx2 /〕

(我现在的目录可能在任何地方.我在elisp程序中调用zip)所以我这样做

zip -r c:/Users/xah/xx2/build-util.zip c:/Users/xah/ErgoEmacs_Source/ergoemacs/build-util/
Run Code Online (Sandbox Code Playgroud)

然后zip将记录这样的完整路径

adding: Users/xah/ErgoEmacs_Source/ergoemacs/build-util/ (stored 0%)
adding: Users/xah/ErgoEmacs_Source/ergoemacs/build-util/.svn/ (stored 0%)
adding: Users/xah/ErgoEmacs_Source/ergoemacs/build-util/.svn/all-wcprops (deflated 56%)
...
Run Code Online (Sandbox Code Playgroud)

我希望路径只是以build-util开头.

注意:我在一个程序(elisp)中调用zip,我不能或不想使用任何envirenment变量的概念.

这有可能与一些zip参数?

bash shell zip

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

有没有办法使用cmd.exe或powershell将文件夹移动到垃圾箱?

  • 有没有办法使用cmd.exe将文件夹移动到垃圾箱?(Windows Vista)
    (也就是说,行为应该与用户将文件夹从GUI移到垃圾箱相同)

  • 有没有办法使用PowerShell?

powershell cmd

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

使用书签打开文件但始终在给定位置

使用书签打开文件时,是否有办法始终在文件的特定位置打开?

emacs bookmarks elisp

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

在桌面上显示当前目录的常见Linux命令是什么?

什么是大多数或所有linux上都可用的"开放"命令?

例如在OS X中,我可以在shell中执行

打开.

并且文件夹显示在Finder(即桌面)中.同样,在Windows上命令是"探索".

我问,因为我想在emacs中使用跨平台命令.

(defun open-in-desktop () 
  "Open the current file in desktop. 
Works in Microsoft Windows and Mac OS X." 
  (interactive) 
  (cond 
   ((string-equal system-type "windows-nt") 
    (w32-shell-execute "explore" 
      (replace-regexp-in-string "/" "\\" default-directory t t))) 
   ((string-equal system-type "darwin") (shell-command "open .")) 
   ) ) 
Run Code Online (Sandbox Code Playgroud)

有人建议使用xdg-open,但我不确定这是否仅适用于发行版或gnome/kde.(我不是linux用户)

linux emacs shell freedesktop.org

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

在emacs shell中运行的unix date util的问题

这是一个奇怪的事.

在Windows Vista上的Cygwin bash上,我可以得到这样的日期:

$ date
2010-11-30  4:40:48 AM PST

xah@xah-PC ~
$ date +%s
1291120855
Run Code Online (Sandbox Code Playgroud)

但在emacs"shell"中,运行相同的日期命令,我得到这个:

c:\Users\xah\web\xahlee_org\comp>which date
which date
/usr/bin/date

c:\Users\xah\web\xahlee_org\comp>date
date
The current date is: 2010-11-30 
Enter the new date: (yy-mm-dd) 


c:\Users\xah\web\xahlee_org\comp>date +%s
date +%s
The system cannot accept the date entered.
Enter the new date: (yy-mm-dd) 
Run Code Online (Sandbox Code Playgroud)

知道发生了什么事吗?

emacs bash shell

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

getElementsByTagName只获得顶级标签?

我有这个真正令人讨厌的问题.

总之,如果我使用,我会得到一个未找到的元素 (document.getElementsByTagName("p"))[0]

如果p标签在div这里面

<div id="main">
<p>see</p>
</div>
Run Code Online (Sandbox Code Playgroud)

但是一旦我删除了div包装器,所有的东西都能正常工作.

30分钟后,我把问题简化为这个简单的代码:

<!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>ttttttttttttttttttttt</title>
</head>
<body>

<div id="main">
<p>see</p>
</div>

<script type="text/javascript">
var myobj = document.createElement("div");
myobj.innerHTML='yesyes';

document.body.insertBefore(myobj, (document.getElementsByTagName("p"))[0] );
</script>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

把上面放在一个文件中.在Firefox或Chrome或IE8中打开.如果成功,你应该看到"是的".如果你删除<div id="main">包装,那么它的工作原理.

似乎有些东西我不理解getElementsByTagName

javascript

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

网址空间; 浏览器变得更聪明还是服务器?

看起来今天您不再需要在HTML链接或图像链接中按%20编码空格.例如,假设您在〔http://example.com/i/my house.jpg〕上有此图像.注意那里的空间.在你的html代码中,你可以这样做:

<img src="http://example.com/i/my house.jpg" alt="my house">
Run Code Online (Sandbox Code Playgroud)

它适用于所有当前版本的浏览器.但是,我不确定浏览器是否在请求URL之前对其进行编码,或者特定服务器是否会使用带空格的路径进行编码?(阿帕奇)

附录:对此感到抱歉.我真正的问题是关于HTTP协议.我会按原样留下这个并标记已回答.我在这里发了一个新问题. HTTP协议是否需要在文件路径中编码空间?

browser webserver

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

哪个叫叫?bash builtin或/ bin/kill

当我输入

kill -s ‹n› ‹pid›
Run Code Online (Sandbox Code Playgroud)

在终端,是调用bash builtin还是/ bin/kill?

对于这个问题,假设它是Ubuntu默认设置(bash).

unix linux bash

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

HTTP 协议是否需要在文件路径中编码空间?

在 HTTP 协议中,

例如,请求的第一行就像

GET /img/my house.jpg HTTP/1.1
Run Code Online (Sandbox Code Playgroud)

我的问题是,如果文件名有空格,协议是否要求以某种方式对其进行编码?(如果协议不清楚,实际情况是什么?)

webserver http

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

无法在另一个节点之前和之后插入节点

我正在尝试在现有节点之前和之后插入节点.问题是,它只会插入其中一个.奇.有谁能解释为什么?

这是代码

// create your new node <p>Hi</p>
 var newNode = document.createElement("p");
 newNode.appendChild(document.createTextNode("Hi"));

// a existing node for reference
var refNode = document.getElementById("xyz");

// insert newNode before refNode
refNode.parentNode.insertBefore(newNode, refNode);

// insert newNode after refNode
refNode.parentNode.insertBefore(newNode, refNode.nextSibling);
Run Code Online (Sandbox Code Playgroud)

PS感谢karim79回答了之前关于插入的问题.

javascript dom

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