2012-03-03 73 views
2

以下是我的代碼: 對不起,質量和格式。 基本上,我想要的是將div的所有內容(文本,對象)複製到另一個div。 div #results包含谷歌地圖和其他一些對象。 我試過使用.clone,但它不工作。所有文本都被正確複製,但#results2中的谷歌地圖不顯示。 我需要做這些,因爲我將不得不根據一個值對div進行排序,並將它們顯示在一個頁面中,並執行一個導航系統。將包含對象的div複製到另一個div

/*created_div=new Object();*/ 
    var my_div=create_div_test(p[z],my_traversed_edge,board,alight,visited_bus,tot_distance,tot_time); 

    if(my_div!=null){ 
     v='#'; 
     v+='results'; 
     $('#results').html(my_div); 
     var x='animate'; 
     var v='#animater'; 
     v+=div_id; 
     x+=div_id; 
     var visited_id='#visited'; 

     visited_id+=div_id; 

     created_div.my_id=div_id; 
     var map=create_map(div_id); 
     var poly=retrieve_results_edges(bus_stops_visited,map); 



     var strVar=""; 
     strVar += "<span class=\"animate\">"; 
     strVar += "<input type=\"button\" id="+x+" name=\"animate\" value=\"Animate\" \/>"; 
     strVar += "<\/span>"; 
     $(v).append(strVar); 

     retrieve_the_stops(bus_stops_visited,map); 
     var str_var=show_visited_stops(bus_stops_visited,map); 


     $(visited_id).append(str_var); 
     $('#'+x).bind('click',{poly:poly,map:map}, function(event) { 

       animate(event.data.poly,event.data.map) 
     }); 

     set_map(map); 

     set_polyline_color(my_traversed_edge,bus_stops_visited,map); 
     $('#results2').html($('#results').html()); 

     /*created_div.htmlContent=$('#results').clone(); 

     $('#results').empty(); 

     created_div.totaldistance=tot_distance; 

     created_div.totaltime=tot_time; 

     my_divs.push(created_div);*/ 

    } 
    } 
+0

如果您在發帖之前無法對您的代碼進行格式化,並且只打算接受您詢問的40%問題的答案,那麼獲得高質量答案的機率就會很低。 – 2012-03-03 21:12:08

+0

抱歉。有什麼建議麼?任何人。我需要能夠將#results的內容轉換爲#results2 – 2012-03-03 21:49:41

回答

2

不能隨意複製使用其他人的代碼(如谷歌地圖),因爲你將如何使這項工作取決於創建或管理對象的特定代碼對象。

您可以使用jQuery的.clone()來克隆由jQuery事件處理程序和jQuery數據管理的對象,而不是任何直接的DOM引用,但是由其他類型的代碼創建或管理的對象將不得不重新創建其他代碼。因此,在這種情況下,如果您確實需要Google Map的第二個副本,則必須使用Google API創建一個與第一個相同規格的新MAP,您可以將其放入第二個位置。

+0

有沒有一種方法可以存儲在數組中創建的div,然後編寫一個函數來顯示特定的div?因此,不需要將一個div複製到另一個! – 2012-03-03 22:15:07

+0

@ jens.bhurtah - 我不明白你在問什麼。瀏覽器DOM可以被操縱。您可以隱藏對象,顯示對象,在頁面上移動它們,將它們從頁面中移除,但稍後保留它們,將對象插回到之前刪除的頁面中等等。 – jfriend00 2012-03-03 22:54:40

相關問題