我只是使用JSHint来绘制一些JavaScript代码.在代码中我有两个for循环,这两个使用如下:
for (var i = 0; i < somevalue; i++) { ... }
Run Code Online (Sandbox Code Playgroud)
因此,两个for循环都使用var i进行迭代.
现在JSHint向我展示了第二个for循环的错误:"'我'已经定义了".我不能说这不是真的(因为它显然是)但我一直认为这无关紧要因为var i仅用于那个特定的地方.
以这种方式使用for循环是不好的做法吗?我应该在我的代码中为每个for循环使用不同的变量
//for-loop 1
for (var i = 0; ...; i++) { ... }
//for-loop 2
for (var j = 0; ...; j++) { ... }
Run Code Online (Sandbox Code Playgroud)
或者这是我可以忽略的错误(因为它不会破坏我的代码,它仍然会做它应该做的事情)?
JSLint顺便说一下.停止在第一个for循环验证,因为我没有在函数的顶部定义var i(这就是我首先切换到JSHint的原因).所以根据这个问题的例子:我应该使用JSLint还是JSHint JavaScript验证? - 无论如何我应该使用像这样的for循环来确认JSLint:
...
var i;
...
//for-loop 1
for (i = 0; ...; i++) { ... }
...
//for-loop 2
for (i = 0; ...; i++) { ... }
Run Code Online (Sandbox Code Playgroud)
这对我来说也很好看,因为这样我应该避免JSLint和JSHint中的错误.但我不确定的是,我是否应该为每个for循环使用不同的变量,如下所示:
...
var i, …
Run Code Online (Sandbox Code Playgroud) 反正我是否可以通过jQuery检测到当前选择的表单元素是否处于活动状态?
我创建了这个小提琴来演示这个问题:
当您将鼠标悬停在"搜索"-Link上时,搜索表单会显示出来.当您现在单击选择字段以打开内部选项,然后在不选择任何内容的情况下,将表单保留在右侧(将鼠标移动到灰色块的右边缘),选择字段保持打开状态eles消失(应该如此).
现在我想要使select元素再次处于非活动状态,因此只要select元素仍处于打开状态,它就不会保持打开状态或阻止表单的其余部分消失.
所以,无论哪种方式,我都必须以某种方式检测选择字段是否仍处于打开或活动状态.有没有办法用jQuery检查这个状态?
谢谢你的帮助.
是否可以在jQuery/javascript中逐步增加或减少十六进制颜色值?
我想做的是这样的事情:
适应类似的for-loop
for (var i = 0; i <= 100; i++) {
console.log(i);
}
Run Code Online (Sandbox Code Playgroud)
我想做点什么
for (var color = 000000; color <= ffffff; color++) {
console.log(color);
}
Run Code Online (Sandbox Code Playgroud)
没有任何转换.
那可能吗?我已经尝试过了:
for (var color = parseInt('000000', 16); color <= parseInt('ffffff', 16); color++){
console.log(color.toString(16));
}
Run Code Online (Sandbox Code Playgroud)
它工作但它非常慢(我得到警告,脚本正在减慢网站的速度,如果我想停止脚本).
我想这样做的原因是:我想在一定的时间间隔内更改svg渐变的颜色停止.如果我有这样的svg(简化):
<svg>
...
<linearGradient>
<stop offset="0%" stop-color="#C8E3EF"/>
<stop offset="100%" stop-color="#C8E3EF"/>
</linearGradient>
...
</svg>
Run Code Online (Sandbox Code Playgroud)
该梯度当然会显示为纯色.现在我想逐步改变它,例如
<svg>
...
<linearGradient>
<stop offset="0%" stop-color="#dfcf99"/>
<stop offset="100%" stop-color="#c5b6ec"/>
</linearGradient>
...
</svg>
Run Code Online (Sandbox Code Playgroud)
在每个步骤或间隔,我想要更接近目标颜色的一个值(通过加/减).最后,结果应该是平滑的颜色动画.没有转换可能吗?它不一定是for-loop btw.我只是选择它来说明我的想法.