2012-07-13 100 views
0

我正在測試google map api,在地圖上設置標記。當點擊地圖時,它發送一個JSON請求到一個PHP,將經緯度保存在一個mysql數據庫中,然後使用google maps api添加一個javascript函數的標記,非常簡單。問題在於它使用的是Chrome和Firefox,但它不能用我的手機與Opera Mini瀏覽器一起工作,它是一款android 2.3.4。JSON不適用於Opera Mini瀏覽器

手機附帶的導航器在顯示標記時沒有問題。

代碼:(2個功能)

function agregoCoordenadasEnBaseDeDatos(punto) 
{ 
    // alert(JSON.encode(punto)); 
    punto['a']=punto['$a']; 
    new Request({'url':'insertarMarcador.php?puntoCorchs=' + JSON.encode(punto), 
           'method':'get', 
           'onSuccess':function(o){agregarPunto(punto);}, 
           'onFailure':function(o){alert("Pelate!!! "+o)}}).send(); 
} 
    function agregarPunto(punto) 
    { 

     var marker = new google.maps.Marker({position: punto, 
                 map: first_map, 
                title:'Hola Mundo!!!', 
                icon:'IMAGEFILEURLDELETED.GIF', optimized: false}); 
    google.maps.event.addListener(marker, 'click', function() { 
    first_map.setZoom(8); 
    first_map.setCenter(marker.getPosition());  
     });   
} 

它是一個已知的問題?

我需要使用關於哪個瀏覽器訪問我的網站的if語句嗎?

回答

2

Opera Mini是一款瘦客戶端,它接收在Opera服務器上預編譯的「智能」圖像(OBML)。當您輸入地址時,手機上的瘦客戶端會將其發送給Opera服務器,Opera服務器會向遠程服務器發送真正的HTTP請求。然後,Opera服務器收到響應,創建映像並將其發送回瘦客戶端。所以本身沒有css,html,js到達瘦客戶端。只是OBML圖像。所以當你在客戶端觸發一個動作時,如果不需要通過服務器進行往返,它就不會有效。有關XMLHttpRequest事件的特定支持,請參閱guidelines of Opera Mini。這是節省帶寬(80%)和設備上的實時交互之間的折中。這就是歌劇院試圖逐步改進它。

您是否還試過Opera Mobile 12,與Opera Mini不同?

+0

謝謝...我沒有嘗試Opera Mobile 12,我會做... 再次感謝你。 – HoNgOuRu 2012-07-13 19:51:21

相關問題