2013-05-09 20 views
-1

我想要做的是在我的页面上增加一个稳定增量/间隔的数字。我创建了程式化的图像来表示每个数字0-9在计数,所以我也需要用它各自的图像替换每个数字。代码中的第一个函数表示该任务,第二个脚本是实际的计数。我使用wordpress,所以我添加了JS文件并将其排入header.php文件。为什么我的JS没有工作(在wordpress中)?

下面是我遇到问题的地方:我能够使计数器正常工作,但counterimages(input)函数不想为我工作。这可能是我如何试图在WordPress页面上“调用”功能的问题。

如果有人能帮助我,我会非常感激!

function counterimages(input) { 
var output = "" 

for (var i = 0; i < input.length; i++) { 
    var chr = input.substring(i, i + 1) 
    if (chr == '£') { 
     output += '<img border="0" src="img/pound.gif">'; 
    } else if (chr == '.') { 
     output += '<img border="0" src="img/dot.gif">'; 
    } else { 
     output += '<img border="0" src="http://eatiply3.staging.wpengine.com/wp-content/uploads/2013/05/'+(chr+1)+'.png">'; 
    } 
return output; 
} 

var START_DATE = new Date("October 21, 2012 22:30:00"); // put in the starting date here 
var INTERVAL = 1; // refresh interval in seconds 
var INCREMENT = 769.2; // increase per tick (1/0.0013 ~ 769) 
var START_VALUE = 35000; // initial value when it's the start date 
var count = 0; 

jQuery(document).ready(function($) { 
var msInterval = INTERVAL * 1000; 
var now = new Date(); 
count = parseInt((now - START_DATE)/msInterval) * INCREMENT + START_VALUE; 
$('#counter').html(count.toFixed(0)); 

window.setInterval(function(){ 
    count += INCREMENT; 
    $('#counter').html(count.toFixed(0)); 
}, msInterval); 

});` 
+2

“为什么不是我的代码工作?”问题通常不适合StackOverflow。他们不仅仅帮助你而且不帮助别人,他们很少有很多附加值。您是否尝试过使用'debugger;'语句和其他调试技术,如将'console.log'语句放在代码中的战略位置并检查实际发生的事情? – 2013-05-09 15:39:51

+0

这不是一个很好的问题,但看起来像你刚刚在'return output之前丢失了一个紧支架;'该函数没有关闭('counterimages') – noShowP 2013-05-09 15:41:37

回答

1

你缺少一个支架在counterimages功能

http://jsfiddle.net/Rhpjw/

function counterimages(input) { 
    var output = "" 

    for (var i = 0; i < input.length; i++) { 
     var chr = input.substring(i, i + 1) 
     if (chr == '£') { 
      output += '<img border="0" src="img/pound.gif">'; 
     } else if (chr == '.') { 
      output += '<img border="0" src="img/dot.gif">'; 
     } else { 
      output += '<img border="0" src="http://eatiply3.staging.wpengine.com/wp-content/uploads/2013/05/' + (chr + 1) + '.png">'; 
     } 
     return output; 
    } 
} 

var START_DATE = new Date("October 21, 2012 22:30:00"); // put in the starting date here 
var INTERVAL = 1; // refresh interval in seconds 
var INCREMENT = 769.2; // increase per tick (1/0.0013 ~ 769) 
var START_VALUE = 35000; // initial value when it's the start date 
var count = 0; 

jQuery(document).ready(function ($) { 
    var msInterval = INTERVAL * 1000; 
    var now = new Date(); 
    count = parseInt((now - START_DATE)/msInterval) * INCREMENT + START_VALUE; 
    $('#counter').html(count.toFixed(0)); 

    window.setInterval(function() { 
     count += INCREMENT; 
     $('#counter').html(count.toFixed(0)); 
    }, msInterval); 
}); 
相关问题