2015-03-11 1 views
0

У меня есть следующая функция JQuery, которую я хочу вызвать, когда страница загружается.Вызов JQuery при загрузке с использованием Python CherryPy

class Fitbit(object): 
@cherrypy.expose 
def index(self): 

    currentDate = (time.strftime("%d/%m/%Y")) 

    return """<html> 
    <head> 
     <title>Fitbit</title> 
     <link href="/static/css/fitbit.css" rel="stylesheet"> 
     <script> 
      $(document).ready(function(){ 
       $('.bar-percentage[data-percentage]').each(function() { 
      var progress = $(this); 
      var percentage = Math.ceil($(this).attr('data-percentage')); 
      $({countNum: 0}).animate({countNum: percentage}, { 
      duration: 2000, 
      easing:'linear', 
      step: function() { 
       // What todo on every count 
      var pct = ''; 
      if(percentage == 0){ 
       pct = Math.floor(this.countNum) + '%'; 
      }else{ 
       pct = Math.floor(this.countNum+1) + '%'; 
      } 
      progress.text(pct) && progress.siblings().children().css('width',pct); 
      } 
      }); 
     }); 
     }); 

     </script> 
    </head> 

    <body> 

    <h4>{0}</h4> 

       <article class="infoWindow"> 
        <article class="infoLogo"><img alt="backDate" src="/static/images/footprint.png" width="40" height="40"/>Steps</article> 
        <div id="bar-1" class="bar-main-container azure"> 
         <div class="wrap"> 
          <div class="bar-percentage" data-percentage="38"></div> 
          <div class="bar-container"> 
          <div class="bar"></div> 
         </div> 
        </div> 
        </div> 
       </article> 
    </body> 

    </html>""" .format(currentDate) 

    #return html 
    index.exposed = True 

if __name__ == '__main__': 
conf = { 
'/': { 
    'tools.sessions.on': True, 
    'tools.staticdir.root': os.path.abspath(os.getcwd()) 
}, 
'/static': { 
    'tools.staticdir.on': True, 
    'tools.staticdir.dir': './public' 
}, 
'/images': {'tools.staticdir.on': True, 
    'tools.staticdir.dir': './public'} 
} 
cherrypy.quickstart(Fitbit(), '/', conf) 

Это в моем HTML, который находится в моем .py файл с помощью return """<html> и т.д. Я использую CherryPy, чтобы сделать это, и мне нужно найти, как вызвать эту функцию при загрузке страницы. Все примеры, которые я нашел, вызываются нажатием кнопки, что не помогает мне, тем более, что я новичок в этом и не уверен, как это сделать при загрузке. Благодаря

ответ

0

Это будет вызывать Init на готовом ...

$('document').ready(init); 
     function init(){ 
      $('.bar-percentage[data-percentage]').each(function() { 
      var progress = $(this); 
      var percentage = Math.ceil($(this).attr('data-percentage')); 
      $({countNum: 0}).animate({countNum: percentage}, { 
       duration: 2000, 
       easing:'linear', 
       step: function() { 
       // What todo on every count 
        var pct = ''; 
        if(percentage == 0){ 
         pct = Math.floor(this.countNum) + '%'; 
        }else{ 
         pct = Math.floor(this.countNum+1) + '%'; 
        } 
       progress.text(pct) && progress.siblings().children().css('width',pct); 
       } 
      }); 
     }); 
    }; 

Надеется, что это помогает!

+0

Добавлен код выше в случае, если немного запутаться, как получение ключевой ошибки при запуске выше. – Navvy

+0

А - Я вижу слишком много закрытых круглых скобок ... Обновлен мой ответ. –

+0

Все еще не запускается, когда я запускаю его, просто пустым, где должна быть информация из него. – Navvy