因此,当我想在网页上添加Google +1按钮时,我会这样做:
<script type="text/javascript" src="https://apis.google.com/js/plusone.js">
{lang: 'zh-TW'}
</script>
但我想知道,脚本标签中有一个对象,但它也加载了plusone.js
!最后,脚本还可以获取标记内的对象。谷歌如何做到这一点?不像通常我不会把任何东西放进去。通常我会做
<script type"text/javascript" src="script.js"></script>
答案 0 :(得分:7)
由于URL已知,因此很简单:
JSON.parse(
document.querySelector("script[src='https://apis.google.com/js/plusone.js']")
.innerHTML.replace(/^\s+|\s+$/g,'')
);
也就是说,正如Alohci在评论中指出的那样,页面上的最后一个脚本将是脚本运行时加载的最后一个脚本,因为(除非另有说明)脚本是阻塞的。因此,这将起作用:
var scripts = document.getElementsByTagName('script');
var data = JSON.parse(scripts[scripts.length-1].innerHTML.replace(/^\s+|\s+$/g,''));