我有一个文本区,网站管理员可以插入自己的JS。我需要获取他们的JS,重新格式化它,并在我自己的JS函数中输出它。
管理员在文本区域中放置的示例:
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-11111111-1" id="someID" data-param="someValue"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-11111111-1');
</script>
我需要把它变成:
myCallback(){
getScript(https://www.googletagmanager.com/gtag/js?id=UA-11111111-1, {"async":true, "id": "someID", "data-param": "someValue"));
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-11111111-1');
}
我可以用一个简单的txt.replace('<script>','')
删除<script>
标签;
然而,问题在于下载其他脚本并包含如下属性的脚本:
<script src="https://example.com/script.js" id="someID" data-par="123" data-par2="abc">
谁能告诉我如何在文本中找到它们,并将它们的参数放入我自己的函数getScript(src, {params})
中。
更复杂的是,我需要在JS和PHP中都有它。JS用于在管理员输入代码时在浏览器上运行代码,而PHP用于代码清理。
暂无答案!
目前还没有任何答案,快来回答吧!