我对javascript
和jquery
相当陌生。我以为我已经学到了足够的知识来做到这一点,但是显然没有。我认为代码是很容易解释的。
问题是ArrowDir
显然是未定义的。在我看来,它似乎很确定,但是我敢肯定我缺少明显的东西。
function ArrowDir(){
var up = function(){
$("#arrow").attr('src','up_arrow.jpg');
};
var down = function(){
$("#arrow").attr('src','down_arrow.jpg');
};
}
$(function () {
if($("#toggle").onclick){
ArrowDir().down();
};
});
我尝试将函数分配为变量
var ArrowDir = function()
,但似乎没有什么不同 最佳答案
您无法以编写的方式访问up
和down
值。您只需要从down()
正文中调用ArrowDir
,除非您已将这些函数添加到ArrowDir
返回值中:
ArrowDir() {
var up = ...;
var down = ...;
return {
up: up,
down: down
};
}
另外,如果除了封装
ArrowDir
和up
函数之外,没有将down
用于其他用途,则应仅将ArrowDir
声明为对象,然后调用ArrowDir.up()
和ArrowDir.down()
:var ArrowDir = {
up: function () {
...
},
down: function () {
...
}
}