对不起,我不会说英语,请原谅。我有对象'window.userInterface.filmMakinesi'。我这个对象运行控制台没问题。但是当运行我的javascript文件时会出现问题。不工作。有趣。
window.userInterface.filmMakinesi = function(control) {
controlBox = [];
controlBox["ileri"] = {dinamikCSS: "top",operator:"-"};
controlBox["geri"] = {dinamikCSS: "bottom",operator:"+"};
secim = controlBox[control].dinamikCSS;
operator = controlBox[control].operator;
height = parseInt($("section.open").height());
/*
secim : top;
operator: -
height: 270;
*/
$("div#filmMakinesi").animate({ secim : operator+height+"px"},600,"swing");
}
window.userInterface.filmMakinesi("geri");
不工作但是如何运作。字符串而不是尝试我写的值。
window.userInterface.filmMakinesi = function(control) {
controlBox = [];
controlBox["ileri"] = {dinamikCSS: "top",operator:"-"};
controlBox["geri"] = {dinamikCSS: "bottom",operator:"+"};
secim = controlBox[control].dinamikCSS;
operator = controlBox[control].operator;
height = parseInt($("section.open").height());
// \/\/\/
$("div#filmMakinesi").animate({ "top" : operator+height+"px"},600,"swing");
}
window.userInterface.filmMakinesi("geri");
答案 0 :(得分:1)
您需要创建一个对象,以便使用[]
表示法允许使用变量secim
作为动态属性。
var animateObject = {};
animateObject[secim] = operator+height+"px";
$("div#filmMakinesi").animate(animateObject ,600,"swing");
您不能以这种方式创建属性foo
:
var myVariable = 'foo';
var object = { myVariable :'some value'};
console.log(object.foo) // returns undefined
console.log(object.myVariable ) // returns 'some value'