j = {largeSign: function(a) {
var b = $(#identity .scorecard"), c = 43, d = 105 - c, e = 800;
this.animation(b, d, c, e, a)
},animation: function (a, b, c, d, e) {
var f = this, g = 1e3, h, i = function() {
$(".sign", a).each(function(a, f) {
h = parseInt(e + $(this).text()), a > 2 && (d += 30), a === 0 || a === 3 ? $(this).animate({backgroundPosition: "0px " + (b * h + c) + "px"}, d * 1.6) : a === 1 || a === 4 ? $(this).animate({backgroundPosition: "0px " + (b * h + c) + "px"}, d * 1.8) : (a === 2 || a === 5) && $(this).animate({backgroundPosition: "0px " + (b * h - b + c) + "px"}, d * 2, function() {
$(this).delay(200).animate({backgroundPosition: "0px " + (b * parseInt(e + $(this).text()) + c) + "px"}, 1e3)
})
})
};
setTimeout(i, g)
}}
基本上我正在尝试为background-position设置动画,让它停在div .sign中已经解析的值上。
答案 0 :(得分:1)
看起来你正在使用jQuery,所以这里是jQuery解决方案:
$(function() {
// your code here
});
这只是
的简写$(document).ready(function() {
// your code here
});
答案 1 :(得分:1)
答案 2 :(得分:0)
通过以下方式包装代码:
$(document).ready(function(){
// the call goes here
})
答案 3 :(得分:0)
你可以用.ready()
包裹它:
jQuery(document).ready(function($) {
// Code using $ as usual goes here.
});
答案 4 :(得分:0)
如果您希望在文档加载后运行,请尝试以下操作:
$(function(){
//put your code here
j = {largeSign: function(a) {...
});
我发现使用'$(function(){'比'$(document).ready'更好,因为如果'$(document).ready'被弃用,你将不必更改任何如果你已经在使用'$(function(){..'。
,那么你的代码答案 5 :(得分:0)
$(function(){
j.largeSign.apply(context, arguments);
});
其中..
context
将是this
在运行时在实际函数中引用的内容
和
arguments
可以是单个值,也可以是函数可以作为参数接收的值/对象的数组(如果有的话)。
答案 6 :(得分:0)
尝试
$(document).ready(function() {
// put all your jQuery goodness in here.
});