我从Ruby开始,并且每天都在寻找新的,更短,更优雅的方法来编写代码.
在解决Project Euler问题时,我写了很多代码
if best_score < current_score
best_score = current_score
end
Run Code Online (Sandbox Code Playgroud)
是否有更优雅的方式来写这个?
有没有一种方法将两个或更多CSS选择器结合使用布尔条件- ,and,?ornot
考虑一下<div>:
<div class="message error">
You have being logged out due too much activity.
</div>
Run Code Online (Sandbox Code Playgroud)
我可以只选择那些包含这两个类的元素吗?
有什么东西沿着div.message && div.error?
我对微软采访中的一个问题感到困惑,如下所示:
一个函数应该接受一个范围(3 - 21),它应该打印所有连续的数字组合,形成如下给出的每个数字:
3 = 1+2 5 = 2+3 6 = 1+2+3 7 = 3+4 9 = 4+5 10 = 1+2+3+4 11 = 5+6 12 = 3+4+5 13 = 6+7 14 = 2+3+4+5 15 = 1+2+3+4+5 17 = 8+9 18 = 5+6+7 19 = 9+10 20 = 2+3+4+5+6 21 = 10+11 21 = 1+2+3+4+5+6
你能帮我在C#中形成这个序列吗?
谢谢,马赫什
请考虑以下Javascript代码:
var a = [];
var f = function() {
for (var i = 0; i < 3; i++) {
a.push(function(){alert(i)});
}
for (var j = 0; j < 3; j++) {
a[j]();
}
};
Run Code Online (Sandbox Code Playgroud)
警报三次打印出'3'.我想要一个不同的行为 - 在循环的每次迭代中生成一个打印i的当前值的函数.即3个打印不同索引的函数.
有任何想法吗?
如果我使用循环创建大量HTML元素,比如
for (i= 1; i < 100; i++) {
var my_element = document.createElement ("td");
row.appendChild (my_element);
my_element.onclick = function () {my_function (i));
}
Run Code Online (Sandbox Code Playgroud)
然后当单击该元素时,传递给的i的值my_function始终为100,无论调用它的是哪个数字元素.我通过使用解决了这个问题
my_element.id = "something"+i;
my_element.onclick = function (e) {my_function (e.target.id)};
Run Code Online (Sandbox Code Playgroud)
(对于Internet Explorer,显然target需要srcElement.)我很想知道是否有任何方法可以创建函数而无需像这样添加ID到元素.
非常感谢,如果有人能帮我弄清楚为什么我在MooTools中使用事件委托(从Element.Delegation类)中无法以编程方式触发事件.
父母在某些子元素上<div>有一个change监听器<input>.当用户操作触发更改事件时,父div上的处理程序会被触发,但是当我以编程方式触发fireEvent任何子输入时,没有任何反应.基本设置是:
<div id="listener">
<input type="text" id="color" class="color" />
????????????????????????????????????????????????????????????????</div>???????????
Run Code Online (Sandbox Code Playgroud)
$("listener").addEvent("change:relay(.color)", function() {
alert("changed!!");
});
$("color").fireEvent("change"); // nothing happens
Run Code Online (Sandbox Code Playgroud)
父div上的事件处理程序不会被调用.任何帮助表示赞赏.干杯!
相关问题:fireEvent在DOM树中根据泡沫触发事件吗?我当前的黑客是本地发送有效的事件(但仍然是黑客) - http://jsfiddle.net/SZZ3Z/1/
var event = document.createEvent("HTMLEvents")
event.initEvent("change", true);
document.getElementById("color").dispatchEvent(event); // instead of fireEvent
Run Code Online (Sandbox Code Playgroud) 我试图以编程方式触发一个关键事件,在文本框中左转,但没有任何运气.
input元素具有焦点,光标位于末尾.我试图让光标向左移动一步 - 在字母"F"之前*以编程方式触发键盘事件(keydown/keyup/keypress),并使用相应的击键←或→以输入框为目标.
ABCDEF|
这是迄今为止的代码:
HTML
<input id="a" type="text" />
Run Code Online (Sandbox Code Playgroud)
使用Javascript
var keyEvent = document.createEvent("KeyboardEvent");
var keyLocation = '0x00';
var keyIdentifier = "Left";
keyEvent.initKeyboardEvent("keypress",
true,
true,
window,
keyIdentifier,
keyLocation,
false);
$("a").dispatchEvent(keyEvent);
Run Code Online (Sandbox Code Playgroud)
如果你想看到整个代码,请在jsfiddle上保存一个快速演示 - http://jsfiddle.net/Vsafv/
我对制作这种跨浏览器并不感兴趣(只是让它在Chrome中运行).谢谢你的帮助.
我是javascript/jquery的新手.我有一个简单的问题,一个java脚本函数正在运行,并希望看到该线程的线程ID.在java中我们喜欢
Thread.getID();//in java
这将打印正在运行的线程的线程ID.以类似的方式,我们使用什么函数来获取javscript中正在运行的线程id.
其实我想要的是......
在我的JavaScript中,我有一个正在收听频道的听众.当通道中有消息时,将调用回调方法并处理数据.所以在这里我试图看看它是如何工作的.假设通道中有10条消息,每条消息都会调用回调.
假设回调方法正在运行消息"a",并且在处理消息"a"的数据时,它得到另一个消息"b".一旦消息"a"的处理完成,是否会调用"b"的回调方法?
我想通过在回调函数中打印线程号来检查这一点,该函数告诉它是按顺序运行(一个线程)还是多个线程.这就是为什么我试图打印线程ID.谢谢你的回复.
谢谢,斯瓦蒂
我观看了John Resig 在JavaScript库设计演示中的最佳实践 ; 一张幻灯片建议"调整"对象构造函数,以便实例化它自己.
function jQuery(str, con) {
if (window === this) {
return new jQuery(str, con);
}
// ...
}
Run Code Online (Sandbox Code Playgroud)
new jQuery("#foo")随之而来的,变成了jQuery("#foo").
我认为这很有趣,但我没有在我自己的代码中编写类似的构造函数.
过了一会儿,我在这里看了一篇文章.(对不起,我不记得哪个或者我提供了一个链接.我会更新问题,如果我能再次找到它.)其中一条评论说这样做是不好的做法躲避new程序员,但没有详细说明.
我的问题是,上述一般认为好,坏,或无动于衷,为什么?
javascript ×6
closures ×2
loops ×2
cocoa ×1
css ×1
delegates ×1
dom-events ×1
event-queue ×1
generator ×1
inheritance ×1
jquery ×1
mootools ×1
numbers ×1
ruby ×1
scope ×1
syntax ×1