1

所以如果我在我的网站上设置雅虎管道徽章,雅虎会给我这个代码

<script src="http://pipes.yahoo.com/js/listbadge.js">{"pipe_id":"USER_ID","_btype":"list"}</script>

请注意它将对象文字传递给远程脚本。我想用我自己的脚本做类似的事情,你如何与那个输入交互?

4

1 回答 1

3

您实际上不能像native那样传递变量。Yahoo 正在做的是在他们的 listbadge.js 文件中搜索<script>页面上的所有标签,直到找到包含它的标签,然后将 innerHTML 解析为 JSON。

他们的来源被稍微混淆了,但这是我对它的最好理解。

var scripts = document.getElementsByTagName("SCRIPT");

for (var i = 0; i < scripts.length; i++) {
    var includeString = scripts[i].src;
    if (includeString.match("listbadge.js")) {
        if (scripts[i].innerHTML){
            var passedVariables = parseJson(scripts[i].innerHTML);
        }
        break;
    }
}
于 2008-11-07T04:38:34.230 回答