2013-12-10 37 views
0

基本上,我創建了一個電臺應用程序(迄今爲止這麼好!),我基本上需要在用戶瀏覽應用程序時底部的音頻播放器連續播放。 (這是用Javascript編寫的 - 使用phonegap構建),但顯然當用戶轉到另一頁時,音頻停止,他們必須再次單擊播放。jquery手機AJAX導航不加載jquery元素?

我認爲解決這個(AJAX導航)的方式和它的作品,它的真棒,一切但這是使用要做到這一點的代碼IM:

$(document).ready(function(){ 
     $("a").on("click", function(event){ 
      event.preventDefault(); 

      $.get($(this).attr("href"), function(data) { 
       var resp = $(data); 

       $("#pageContent").html($("#pageContent", resp).html()); 


      }); 
     }); 
}); 

正如你所看到的,它基本上交換稱爲「pageContent」的div與其他頁面上的同一個div,但我有其他頁面上的其他jQuery元素(如jQuery的主題列表,表單,按鈕等),當我這樣導航^它沒有風格任何東西在jQuery ,它把這些表格作爲基本的html和im假設它,因爲它不會重新加載頭部中的內容?

我已經嘗試了很多東西,比如

$("head").html($("head", resp).html());

,這並不工作:-(

所以我想知道,如果有人可以幫助?

非常感謝你。

+0

你能發佈HTML標記嗎? – srquinn

+0

只是問這個問題。爲什麼要講述你的人生故事? – user3071591

回答

0

你有兩個選擇:

  • 負載包含您需要的所有頁面中的所有樣式或
  • 負載的樣式單一的共享CSS文件內嵌

如果選擇第二個選項,你需要閱讀所有的css文件像這樣:

$(document).ready(function(){ 
       $("a").on("click", function(event){ 
         event.preventDefault(); 
         $.get($(this).attr("href"), function(data) { 
           var html = $.parseHTML(data); 
           $("#pageContent").html($('<div></div>').append(data).find('#pageContent').html()); 
           var styles=""; 
           $.each(html, function(i, el) { 
            if(el.nodeName=='LINK'){ 
             $.get($(el).attr('href'),function(data){ 
              $("#pageContent").append($("<style></style>").html(data)); 
             }); 
            } 
           }); 
         }); 
       }); 
     }); 

我希望它有幫助。