代码之家  ›  专栏  ›  技术社区  ›  D.R.

DotNetNuke的储蓄柜台模块?

  •  0
  • D.R.  · 技术社区  · 14 年前

    我已经搜索了很长时间,努力寻找模块,将显示客户节省(美元)。我有两种可能的实现方法。


    方法一:

    例如:基数=1000000美元;开始时间:1/1/2010;增量=100美元;时间段=分钟
    这将在3天后(3天*24小时*60分钟*100美元=自2010年1月1日起43.2万美元)下跌143.2万美元
    每次刷新页面时,将根据开始日期和当前日期之间的时间差计算保存的金额,并显示给用户。


    与上面的设置相同,但是节省的时间会每秒更新一次(也可能是使用某种看起来像里程表的计数器不断滚动)。


    非常感谢您的帮助!

    这是我最后的密码。 $(文档).ready(函数(){
    setTimeout('countit()',1); //1 makes it display the value quickly after loading    
    });
    
    function countit()
    {
      var amountperyear=4000000; //THIS IS THE ONLY NUMBER TO EDIT EACH YEAR
    
      var msperyear=31536000000; //milliseconds per year
    
      var today=new Date();
      var startdate=new Date(today.getYear(),0,00);  //January 1, of the current year at midnight?
      var diff=Math.ceil((today.getTime()-startdate.getTime())); //Time difference in milliseconds
      var newvalue=(diff*(amountperyear/msperyear)); // (# of ms) * (amount/ms)
      var displayvalue=newvalue.toLocaleString(); //Convert to currency formatting
      $("#mycounter").html("$"+displayvalue);
      setTimeout('countit()',500); //Have it update twice per second
    }
    
    </script>
    

    在DNN HTML模块的内容部分:

    <center>
    This year, we've saved our customers:
    <b><div id="mycounter"><i>Loading...</i></div></b>
    </center>
    



    此脚本仅在Internet Explorer中工作。在Chrome和Firefox中,结果是关闭了10多亿。我不太清楚是什么导致了这个问题,但我相信这可能与日期数学或.tolocalstring()有关?以前可能遇到过这个问题的人吗?任何见解或链接将非常感谢!目前,我只是在一些有条件的评论,但这不能是一个永久性的修复!
    <![if !IE]>You must use IE to view this<![endif]-->
    
    1 回复  |  直到 14 年前
        1
  •  2
  •   Ryan Doom    14 年前

    在本地硬盘上创建一个HTML文件并将其放入其中。然后在web浏览器中打开它。它将开始递增一个数字。DNN中不存在您要查找的内容,但可以使用一些简单的Javascript来完成。这会让你开始。

    <html>
    <head>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
    <script type="text/javascript">
    
    var count=5;
    
    $(document).ready(function(){
    
    setTimeout('countit()',1000);
    
    });
    
    
    
    function countit()
    {
      var startmoney = 10;
    
      var today=new Date();
      var startdate=new Date(2010, 10, 01);  //this is actually 11-1-2010 the 10 is 0 based so actually month 11
      var one_day=1000*60*60*24;
      var diff=Math.ceil((today.getTime()-startdate.getTime())/(one_day));
           //diff is the main factor which is the difference in days between startdate & today
    
       count=count*2;
       var newvalue=startmoney*count*diff;
    
      $("#mycounter").html(newvalue);
    
       setTimeout('countit()',1000);
    }
    
    </script>
    </head>
    <body
    <div id="mycounter"></div>
    </body>
    </html>