我试图创建一个名为 startPosition
的属性,然后将 top
属性指定为 CSS 中按钮的 top
值。
这是 jQuery:
var morphObject = {
button: $('button.morphButton'),
container: $('div.morphContainer'),
overlay: $('div.overlay'),
content: $('h1.content, p.content'),
startPosition: {
top: morphObject.button.css('top')
// top: 150,
// left: '20%',
// width: 200,
// height: 70,
// marginLeft: -100
},
当然还有更多,但错误就出在这里。错误是:
[Error] TypeError: undefined is not an object (evaluating 'morphObject.button')
我该怎么做?谢谢。
最佳答案
当您调用 morphObject.button
时,
morphObject
尚不存在。
你可以把它移到外面:
var morphObject = {
button: $('button.morphButton'),
container: $('div.morphContainer'),
overlay: $('div.overlay'),
content: $('h1.content, p.content'),
startPosition: { }
};
morphObject.startPosition.top = morphObject.button.css('top');
或直接引用 jQuery 元素:
var morphObject = {
button: $('button.morphButton'),
container: $('div.morphContainer'),
overlay: $('div.overlay'),
content: $('h1.content, p.content'),
startPosition: {
top: $('button.morphButton').css('top')
}
};
关于javascript - jQuery/Javascript 基本对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29182153/