javascript - 如何在变量中收集HTML页面的所有脚本标签

标签 javascript html html-parsing

我想收集所有<script> ....</script>代码段出现在 HTML 页面中的一些变量中。

执行此操作的更简单方法应该是什么,知道如何使用 JavaScript 检索它吗??

任何帮助将不胜感激。

最佳答案

获取您可以使用的脚本列表

  • document.getElementsByTagName("script"); 按标签
  • document.scripts;内置集合
  • document.querySelectorAll("script"); 通过选择器
  • $("script") jQuery 选择器

var scripts = document.getElementsByTagName("script");
for (var i = 0; i < scripts.length; i++) {
  if (scripts[i].src) console.log(i, scripts[i].src)
  else console.log(i, scripts[i].innerHTML)
}

// To get the content of the external script 
// - I use jQuery here - only works if CORS is allowing it

// find the first script from google 
var url = $("script[src*='googleapis']")[0].src; 

$.get(url,function(data) { // get the source 
  console.log(data.split("|")[0]); // show version info
});  
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
  console.log("Inline script");
</script>
<script>
  function bla() {
    console.log("Other inline script");
  }
</script>

关于javascript - 如何在变量中收集HTML页面的所有脚本标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11078654/

相关文章:

javascript - 在 Javascript 中从多维 JSON 对象检索值

javascript - 使用javascript控制css3立方体效果

javascript - 使用链接交换/更改 div 内容

python - 从页面中获取所有链接 Beautiful Soup

c# - 哪个是最好的 HTML 整洁包? HTML 敏捷包中是否有任何选项可以使 HTML 网页整洁?

java - 尝试从 google url 获取 html 文本,但出现错误 401

javascript - 如何创建一个函数来呈现谷歌图表?

javascript - 在悬停时隐藏工具提示?

javascript - JavaScript 文件顶部的全局变量

css - 液柱之间的沟槽空间