0

我已经为这个小提琴(http://jsfiddle.net/hgGfw/),我一直在关注一个滑块教程,这就是我得到的代码。它使用了一个自调用函数(我认为这就是它的名字??)。无论如何,它适用于在小提琴上设置为“onLoad”的 jQuery,但是当它在我的服务器上时,它什么也不做,直到它被包装在 $(document).ready(.... 脚本中。为什么会这样?JSLint 也抱怨这;

( direction === 'next' ) ? ++current : --current;

知道为什么吗?我的 PHP 还不错,所以我知道该语句的语法,而且它看起来不错。

谢谢,丹。

4

2 回答 2

2

如果您将 javascript / jquery 放入http://jsfiddle.netJavaScript的面板中,它会自动将您的代码放入一个块中(当框架下拉菜单设置为和一个选项时)。$(window).load(function(){ }onLoadjQuery

如果您查看结果窗格的框架源,您应该会看到这种情况。

至于为什么 JSLint 不喜欢这个命令,我它期待一个赋值(尽管你正在对current变量进行递增/递减)。

如果将值分配给变量,JSLint 会很高兴。IE..

var tempVar = ( direction === 'next' ) ? ++current : --current;
于 2012-09-10T11:40:01.613 回答
1

我怀疑 JSLint 抱怨是因为三元运算符旨在为表达式选择一个值,而不是选择一个执行路径。

在这里,您将它用作“if”语句的简写,这将起作用,但有点不寻常。

于 2012-09-10T11:46:02.833 回答