Javascript对象存储在磁盘上的哪个位置?

时间:2011-04-20 12:21:15

标签: javascript google-translate

我是Java Script的新手。此HTML和Java脚本代码使用Google Transliteration API将英语单词音译为孟加拉语。我在浏览器中加载此文件,结果显示在页面上(只是孟加拉语单词)。

在Firefox中查看页面源会显示一个空的<div id="transliteration"></div>标记,就像我加载的HTML代码一样。 但是使用Firebug,我可以清楚地看到孟加拉语这个词确实在这个标签内 再次,使用HttpFox我可以看到来自Google的脚本收到的result对象。

问题是:
为什么Firefox中的页面源没有结果,即使Firefox已经呈现结果并且我可以在那里看到它? 在磁盘上哪些程序(Firebug和HttpFox)寻找result对象?

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <script type="text/javascript" src="https://www.google.com/jsapi?key=MY_KEY">
    </script>
    <script type="text/javascript">

    google.load("language", "1");

    function initialize() {
      google.language.transliterate(["Mohona"], "en", "bn", function(**result**) {
        if (!result.error) {
          var container = document.getElementById("transliteration");
          if (result.transliterations && result.transliterations.length > 0 &&
            result.transliterations[0].transliteratedWords.length > 0) {
            container.innerHTML = result.transliterations[0].transliteratedWords[0];
          }
        }
      });
    }

    google.setOnLoadCallback(initialize);

    </script>
  </head>
  <body>
    <div id="transliteration"></div>
  </body>
</html> 

div标签(Firebug)中的结果:

enter image description here

结果对象(HttpFox)。对不起质量差的图像。黑色文本的最后一行是整个结果对象(不是橙色条)。

enter image description here

2 个答案:

答案 0 :(得分:0)

View is Source显示最初加载的HTML。在页面的JavaScript运行并修改DOM之后,Firebug以HTML格式向您显示页面的DOM。

答案 1 :(得分:0)

Javascript在内存中操纵DOM。

因此,磁盘上任何地方都没有改变DOM的表示。

View-source只显示从服务器收到的数据。


要从您需要执行的javascript访问

var html = document.getElementsByTagName('html')[0].innerHTML;
alert(html); // just to see it

但要将其写入文件,您将需要更多,因为javascript无法访问文件系统(出于安全原因

对于手动保存,您只需将html变量的内容放在<textarea>中,然后复制/粘贴到文件中即可。

相关问题