2

作为学习 HTML 的一部分,我刚刚查看了我的 twitter 页面的 html。在页面的末尾,我可以看到很多状态作为隐藏输入标签的值(该值似乎是 json 形式)。

我没有看到与此相关的明显形式,它也没有出现在 html 请求中。

我想知道是否有人能够猜出这些输入及其值的使用方式/原因。

          </body>
</html>
<input type="hidden" id="init-data" class="json-data" value=" 
{&quot;scribeMetrics&quot;:0,&quot;environment&quot;:&quot;production&quot;,&quot;wtfOptions&quot;:
{&quot;dismissable&quot;:true,&quot;connections&quot;:true,&quot;pc&quot;:true,&quot;limit&quot;:3,&quot;
disabled&quot;:false,&quot;display_location&quot;:&quot;wtf-component&quot;}

........ 等等。

4

1 回答 1

0

如果您查看这个javascript 文件,您会看到使用了该init-data元素

var a=$("#init-data").val(),
    b=JSON.parse(a),
    c=$.makeArray(arguments);
b.moreCSSBundle?using("css!"+b.moreCSSBundle,d):d()}if($("html").hasClass("debug"))
//and so on

如果你想知道为什么他们使用隐藏字段而不是标准的 javascript 变量,你必须在 twitter 上询问负责这件事的人 ;)。我看不出有什么明显的原因,而且缩小的代码并不能更容易理解发生了什么。

于 2012-11-18T16:37:58.860 回答