读取加载我的页面时返回的脚本的属性
Read properties of a script which is returned when my page is loaded
我是 运行 一个 React 应用程序,当我渲染除捆绑包和其他一些文件之外的主页时,我得到这个 javascript 脚本,名为 https://grcontent.experience-booking.com/file/localhost_script.js
:
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-101203313-3"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-101203313-3');
</script>
在我的主 js 文件中,我想以某种方式访问此脚本中的 url,但我不知道该怎么做?我想这样做的原因是用 'UA-101203313-3' 作为 属性 执行另一个脚本。非常感谢
您应该可以使用 querySelector
,并执行类似的操作以获得 URL
注意,我更改了脚本 src url 所以它实际上会被调用
var tag = document.querySelector('script[src^="https://www.googletagmanager"]');
var url = tag.src;
console.log(url)
// and one could also very simple get the id, like this
var params = (new URL(tag.src)).searchParams;
console.log(params.get("id"))
<script async src="https://www.googletagmanager_oops.com/gtag/js?id=UA-101203313-3"></script>
您可以从页面中检索所有脚本标记并循环遍历它们以找到正确的标记并解析 src
属性。类似于:
var scripts = Array.prototype.slice.call(document.getElementsByTagName('script'));
for (var i=0; i<scripts.length; i++) {
var script = scripts[i];
if (script.src && script.src.startsWith('https://www.googletagmanager.com') ){
return getIdFromSrc(script.src);
}
}
我是 运行 一个 React 应用程序,当我渲染除捆绑包和其他一些文件之外的主页时,我得到这个 javascript 脚本,名为 https://grcontent.experience-booking.com/file/localhost_script.js
:
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-101203313-3"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-101203313-3');
</script>
在我的主 js 文件中,我想以某种方式访问此脚本中的 url,但我不知道该怎么做?我想这样做的原因是用 'UA-101203313-3' 作为 属性 执行另一个脚本。非常感谢
您应该可以使用 querySelector
,并执行类似的操作以获得 URL
注意,我更改了脚本 src url 所以它实际上会被调用
var tag = document.querySelector('script[src^="https://www.googletagmanager"]');
var url = tag.src;
console.log(url)
// and one could also very simple get the id, like this
var params = (new URL(tag.src)).searchParams;
console.log(params.get("id"))
<script async src="https://www.googletagmanager_oops.com/gtag/js?id=UA-101203313-3"></script>
您可以从页面中检索所有脚本标记并循环遍历它们以找到正确的标记并解析 src
属性。类似于:
var scripts = Array.prototype.slice.call(document.getElementsByTagName('script'));
for (var i=0; i<scripts.length; i++) {
var script = scripts[i];
if (script.src && script.src.startsWith('https://www.googletagmanager.com') ){
return getIdFromSrc(script.src);
}
}