2011-12-23 58 views
2

我将谷歌的Keyword Tool page生成的源代码(Firefox Web Developer Toolbar中的View Source -> View Generated Source)复制到一个新的HTML文件中。为什么复制的HTML看起来不像原始HTML?

但是,当我打开这个新的文件,一些项目看起来拉伸出于某种原因:

enter image description here

原来的网站看起来是这样的:

enter image description here

我猜Google使用Javascript创建了一些元素并设置了各种属性,但是我在之后复制了页面。那么,为什么这种差异?


更新1

唯一的JS/CSS文件,这是不是作为一个完整的路径给出的是:

<script language="javascript" src="/cues/cues.js"> 

我试图取代这个:

<script language="javascript"> 
    Contents of '/cues/cues.js' here 
</script> 

但它没有帮助。


更新2

在浏览器的错误控制台我发现下面的2个错误:

Error: com_google_ads_apps_servers_cues_CuesRelease is not defined 
Source File: https://adwords.google.com/cues/768DAEDDB2193AB5B05B9C6A01394D78.cache.js 
Line: 1 

Error: com_google_ads_apps_targetingideas_client_TargetingIdeas is not defined 
Source File: https://adwords.google.com/o/Targeting/756D6AF3BB4DD4A68315E34F50C2BC7E.cache.js 
Line: 1 

为什么这些错误出现的任何想法?


更新3

显然,原因是DOCTYPE声明丢失。在将<!DOCTYPE html>添加到延伸版本后,它解决了问题。谁能解释为什么?

+0

您是否拥有与原始页面一起使用的所有CSS? – jfriend00 2011-12-23 06:13:37

+0

你是否也复制了所有的CSS? – 2011-12-23 06:14:38

+0

我更新了问题。 – 2011-12-23 08:48:47

回答

2

当您保存页面时,您只能从服务器获取原始格式的HTML版本。在使用JS加载之后对DOM所做的任何模块都不会成为保存的一部分。

编辑

我无法描绘出了错误的确切原因的代码确实是神秘!无论如何,如果您只想要离线重现确切页面,那么您可以从浏览器(选择网页,完成)执行“将页面另存为..”。我在FF和Chrome上都试过这个,在两种情况下都能正常工作。在打开保存的页面时,最好不要使用IE作为其认证程序,即使是代码中的最小错误也是如此。 :)

错误的最可能原因是跨域AJAX安全异常(当调用客户端脚本和被调用的服务器端脚本来自不同的域时引发)。 com_google_ads_apps_servers_cues_CuesRelease和com_google_ads_apps_targetingideas_client_TargetingIdeas这两个变量似乎是通过返回一些AJAX调用(它不能执行secu excep的bcoz)来初始化的,结果保持为未定义。

+0

请查看我更新的问题。 – 2011-12-23 08:49:45

+0

你检查了浏览器的错误控制台吗?请检查您是否有安全例外。 – techfoobar 2011-12-23 08:58:41

+0

你说得对。有一些错误。请参阅“更新2”。任何想法为什么这些错误出现? – 2011-12-23 11:21:16

1

您必须缺少一些cssjs,这不在页面上,而是从其他地方引用。

+0

请参阅我更新的问题。 – 2011-12-23 08:49:19

1

最可能的原因是CSS和可能在其中引用的相应图像没有得到正确应用。 检查CSS的路径以及CSS中的图像(背景)...您可能需要更正路径才能解决问题。

+0

请参阅我更新的问题。 – 2011-12-23 08:49:31

+0

你有没有检查JS内的代码? – testndtv 2011-12-23 11:12:15

相关问题