2014-03-31 4 views
6

반짝이는 웹 응용 프로그램을 만들 때 사용하고 있습니다. 일부 단계는 계산하는 데 약간의 시간이 걸리기 때문에 반짝이는 응용 프로그램에서 프로세스 표시기에 계산을 추가하고 싶습니다.반짝이는 응용 프로그램의 '계산 중 현상'표시 추가

Show that Shiny is busy (or loading) when changing tab panels이 stackoverflow에 있지만, shinyIncubator 패키지 솔기는 최소 및 최대를 지정해야합니다.

그 다음 나는이 blog : http://withr.me/blog/2014/01/03/add-calculation-in-process-indictor-for-shiny-application/를 발견했다 그는 이것을하는 훌륭한 방법을 제공했다.

shinyUI(bootstrapPage(
    # Add custom CSS & Javascript; 
    tagList(
    tags$head(
     tags$link(rel="stylesheet", type="text/css",href="style.css"), 
     tags$script(type="text/javascript", src = "busy.js") 
    ) 
), 
    div(class = "busy", 
     p("Calculation in progress.."), 
     img(src="http://imageshack.us/a/img827/4092/ajaxloaderq.gif") 
), 
    div(class = "span4", uiOutput("obs")), 
    div(class = "span8", plotOutput("distPlot")) 
)) 

자바 스크립트;

setInterval(function(){ 
    if ($('html').attr('class')=='shiny-busy') { 
    setTimeout(function() { 
     if ($('html').attr('class')=='shiny-busy') { 
     $('div.busy').show() 
     } 
    }, 1000) 
    } else { 
    $('div.busy').hide() 
    } 
}, 100) 

있는 style.css

div.busy { 
    position:absolute; 
    top: 40%; 
    left: 50%; 
    margin-top: -100px; 
    margin-left: -50px; 
    display:none; 
    background: rgba(230, 230, 230, .8); 
    text-align: center; 
    padding-top: 20px; 
    padding-left: 30px; 
    padding-bottom: 40px; 
    padding-right: 30px; 
    border-radius: 5px; 
} 

그래서 제 질문은 내 UI 파일에 사용자 정의 CSS와 자바 스크립트를 추가하는 방법은? js와 css의 두 개의 개별 파일을 만들려고했으나 표시기가 왼쪽 상단에 계속 표시됩니다. 그런 다음이 두 부분의 코드를 직접 R에 넣으려고했지만 구문 오류는 발생했습니다. 감사합니다.

문제 해결 : "www"라는 폴더를 만들고 두 개의 파일을 넣습니다.

+0

정확히 무엇을하려합니까? 진행률 표시기를 페이지 중간에 표시 하시겠습니까? 또는 귀하의 페이지 또는 특정 콘텐츠의 특정 조각과 정렬? (나는 우리가 현재 Shiny 0.10에서 진행 상황 표시가 어떻게 보이는지 디자인하기 때문에 궁금합니다.) –

+0

계산 중이고 사라질 때 진행 표시가 페이지 중간에 나타나도록하려고합니다. 지금까지 나는 표시기가 왼쪽 상단 (내가 추측하는 기본 위치)에 계속 표시되는데 이는 Java 스크립트와 style.css가 작동하지 않는다는 것을 의미합니다. – Yoki

+2

"나는 반짝이는 새 웹 응용 프로그램을 만들려고 노력하고 있습니다"라는 귀하의 게시물을 읽지 마십시오! –

답변

0

"www"라는 폴더를 만들고이 두 파일을 넣습니다.

관련 문제