将参数传递给函数
Passing arguments to functions
我看不出这段代码有什么问题,但它没有按预期工作。
function slide(slideIndex, slideDirection) {
console.log(slideDirection); // outputs 'right'
$('.slide').animate({slideDirection: '-=940'}, 400);
}
$(function(){
$('.prev','.slide').click(function (e) {
e.preventDefault();
var slideIndex = $(this).closest('.slide').index(),
slideDirection = 'right';
slide(slideIndex, slideDirection);
});
});
如果我在animate方法中只使用字符串"right",它会起作用。我做错了什么?
您正在创建一个具有名为slideDirection
的属性的对象文字,但没有使用参数的值。要做到这一点,您需要通过两个步骤分别创建一个对象:
var obj ={};//empty object literal
obj[slideDirection] = '-=940';//assign a new property
$('.slide').animate(obj, 400);
这就行了。json格式的对象看起来是这样的:{"slideDirection":"-=940"}
,而mine(或我解释过的创建对象)看起来是这样:{"right":"-=940"}
。如果我没有弄错的话,后者就是您所需要的
相关文章:
- 在构造控制器、服务等时作为函数参数传递之前列出的角度 JS 变量
- 作为函数参数传递的匿名函数的范围
- 通过函数参数传递id
- 将数组值作为函数参数传递
- 是否需要初始化在 Javascript 中作为“类”构造函数参数传递的变量
- JavaScript 函数参数传递数组
- Angular2 将函数参数传递给构造函数
- 为什么我不能将角度变量作为函数参数传递
- jQuery - 基于作为函数参数传递的对象构建动态 if 语句
- 停止对作为函数参数传递到新列表的对象引用
- 在 JavaScript 中将数组作为内置函数参数传递
- AngularJS将范围变量名称作为函数参数传递
- Javascript 将对象作为函数参数传递
- 在对象上调用方法或将对象作为函数参数传递的差异
- 正确的方法:始终将所有变量作为函数参数传递
- 如何将动态创建的复选框值作为函数参数传递
- 节点简斯 |将对象作为函数参数传递
- 什么是将对象属性作为函数参数传递的良好策略/模式
- 将对象作为函数参数传递.不确定如何访问这些值
- 为什么我们要将函数参数传递到$scope$申请