Pergunta

Então, se eu estou a criação de um yahoo pipes crachá no meu site, yahoo me dá esse código

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

Observe a sua passagem de um literal objeto para o script remoto. eu gostaria de fazer algo semelhante com os meus próprios scripts, como você interagir com essa entrada?

Foi útil?

Solução

Você não pode realmente passar variáveis ??ao redor como que nativamente . O Yahoo está fazendo lá é que em seu arquivo listbadge.js, ele procura através de todas as tags <script> na página até encontrar aquele que incluiu, em seguida, analisa o innerHTML como JSON.

A fonte foi um pouco ofuscado, mas aqui é a minha melhor compreensão do mesmo.

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;
    }
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top