java
  • javascript
  • gwt
  • google-maps
  • infowindow
  • 2010-01-10 83 views 1 likes 
    1

    我正在使用帶有GWT的Google Maps API來創建帶有標記內的推文的選項卡式infowindow。推文的來源是動態生成的。繼承人的Java代碼:動態生成的JavaScript不在Chrome或IE中執行,在Firefox中運行

     HTML recentTweets = new HTML(   
         "<div>"+ 
         "<script type='text/javascript' src='http://twitter.com/javascripts/blogger.js'></script>"+ 
         "<script type='text/javascript' src='http://twitter.com/statuses/user_timeline"+twitterUser+".json?callback=twitterCallback2&amp;count=3'></script>"+ 
         "</div>" 
         ); 
    

    我已經確定了問題,但我需要一個解決方法。會發生什麼是該腳本將在Firefox中執行,而IE和Chrome出於某種原因將避免運行它。這裏是生成的HTML:

    <div class="gwt-HTML"> 
    <table bgcolor="#fdffd1" height="250" width="500"><tbody> 
    <tr> 
    <td align="left"> 
    <h2><a style="color: rgb(122, 0, 69);" ;="" href="http://www.eatphamish.com" target="_blank"> 
    <img src="http://a1.twimg.com/profile_images/334307090/autoscale-100x100_bigger.png" height="48" width="48"><font color="#7a0045">stephencolbert</font></a></h2></td></tr> 
    <tr> 
    <div id="twitter_update_list" style="color: rgb(0, 0, 0); font-size: 12px;"></div> 
    <script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script> 
    <script type="text/javascript" src="http://twitter.com/statuses/user_timeline/stephencolbert.json?callback=twitterCallback2&amp;count=5"></script> 
    </tr></tbody></div> 
    

    ,如果我這個代碼複製到一個普通的HTML文件,並在谷歌瀏覽器中運行它,它會工作。如果我在IE中打開,它將工作,但只有在我授予它運行活動內容的權限後。如果我在Firefox中打開,它工作正常,沒有任何問題。有沒有人知道我可以如何讓這段代碼無需在所有主流瀏覽器中獲得許可就可以工作?謝謝!

    回答

    0

    我的問題的答案是,一旦設置了Infowindow內容,它就是靜態的。出於某種原因,firefox能夠執行在infowindow中運行的腳本,但無法修改其他瀏覽器如何解釋這些腳本。

    0

    您生成的HTML一旦在遠程Web服務器上發佈,就可以正常工作,IE所要求的權限很可能只與本地託管的文件相關。嘗試張貼在一些網站上,它應該適合你。

    因此,這意味着張貼整個GWT項目,因爲測試環境,如果本地可能會導致問題。

    相關問題