Javascript在Firefox中工作,但不是IE或Chrome

时间:2010-01-02 03:12:36

标签: java javascript gwt google-maps cross-browser

我正在使用谷歌地图api的gwt,我有一组标签式的infowindows。在其中一个我想要最近的推文脚本运行。它在firefox中运行良好,但它在ie和chrome中显示为空白。下面是我放在标签中的HTML:

        HTML recentTweets = new HTML(
            "<body>"+
            "<div style='color: #ffffff; background-color: #010101'>"+
            "<script type='text/javascript' src='http://twitter.com/javascripts/blogger.js'></script>"+
            "<script type='text/javascript' src='http://twitter.com/statuses/user_timeline/stephenathome.json?callback=twitterCallback2&amp;count=3'></script>"+
            "</div>"+
            "</body>");

有谁知道为什么会这样?谢谢!

3 个答案:

答案 0 :(得分:1)

那个HTML,原谅我,太可怕了。你在错误的地方有引号(例如在div的style属性中),在td内的tr内的表内有body(它应该是相反的方式)。 Firefox很可能会使用它做一些事情,但其他渲染引擎放弃并不显示任何内容。 HTML应该如下所示:

<body>
<div style="color: #ffffff; background-color: #010101">
  <script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script>
  <script type="text/javascrip\" src="http://twitter.com/statuses/user_timeline/Stephenathome.json?callback=twitterCallback2&amp;count=5"></script>
</div>
</body>

转换为Java的是:

HTML recentTweets = new HTML(
    "<body>"+
    "<div style='color: #ffffff; background-color: #010101'>"+
      "<script type='text/javascript' src='http://twitter.com/javascripts/blogger.js'></script>"+
      "<script type='text/javascript' src='http://twitter.com/statuses/user_timeline/Stephenathome.json?callback=twitterCallback2&amp;count=5'></script>"+
    "</div>"+
    "</body>");

答案 1 :(得分:1)

要添加Javier Badia所写的内容,制作适用于所有流行浏览器的网页的最佳机会是(1)使用验证器确保您的HTML和CSS符合标准,以及(2)了解哪些位该标准使得某些浏览器胡思乱想。

有许多验证器。我赞成Marc Gueury's HTML Validator plugin for Firefox,因为它可以验证每个页面,而无需您提出要求。在浏览器窗口的右下角,它会将绿色复选框或红色X放在可以吸引眼球的位置。让它“永远在线”使它几乎无痛。此外,它还可以离线验证,因此无需将页面提交到外部服务器。根据您的需要,可能还有其他HTML验证器适合您或更好。

我不会推荐CSS验证器,因为我还没有找到好的验证器。

答案 2 :(得分:0)

如果这是GWT项目的一部分,它是否在本地发生?如果是这样,问题很可能只是由于对本地文件的限制将项目放在远程Web服务器上,它应该可以正常工作。