【发布时间】:2016-01-27 11:46:35
【问题描述】:
我正在使用 transit.js 并且我有以下代码行:
var axis = Math.floor(Math.random() * 2);
axis = genXY(axis);
if($(this).hasClass(btn_className)) {
$(this).transition({ axis : '100px' } , function(){
$(this).addClass('active');
$(this).transition({ axis : 0 , duration : 2000 });
})
}
genXY函数如下:
var xy = ['x' , 'y'];
function genXY(no) {
return xy[no];
}
现在我对单个元素(在我的 devTools 中)进行了以下简单测试:
var axis = x;
$('.gridbox .large').eq(2).transition({ x : "100px" });
以上代码行完美运行,即它通过100px 转换元素
,但是现在如果我用 axis 替换 x ,这实际上是一个确实是 x 的变量,现在代码如下所示:
var axis = x;
$('.gridbox .large').eq(2).transition({ axis : "100px" });
以上行不起作用。为什么它现在起作用了?毕竟轴是 x 本身,有人可以解释吗?
【问题讨论】:
-
var axis = x;在您的代码中计算为var axis = undefined。我相信您的意思是输入var axis = "x";。这对于为什么不能使用{ axis : "100px" }替换{ x : "100px" }无关紧要,但我想提及它以帮助稍后进行调试。
标签: javascript jquery jquery-plugins