我使用的技术需要对同一外部JS进行不同的调用。外部JS在iframe中调用,并在其中创建输出。例如:
// Placement 1
<script async id="1234" src="external.js"></script>
// Placement 2
<script async id="1235" src="external.js"></script>
我知道有很多相关的问题,但是他们都假设外部文件只被调用过一次,因此它不需要选择从哪个ID中获取参数。
external.js内部是否有办法知道哪个ID调用了它并使用了它的参数?例如,根据调用它的ID使用“ this”或“ that”:
<script async id="1234" src="external.js?use=this" ></script>
<script async id="1234" src="external.js?use=that" ></script>
// or
<script async id="1235" src="external.js" data-use="this"></script>
<script async id="1235" src="external.js" data-use="that"></script>
// etc. Even the MYLIBRARY way*
答案 0 :(得分:0)
您要查找的内容与JS行为不一致。当您要求浏览器两次将相同资源(图像,视频或本例中的JS文件)引入两次时,它只会带来一次。但是你为什么会这样呢?为什么不简单地使用
功能a(someId){...}
,然后将其发送给1234或1235。我认为应该简单得多。 顺便说一句-我从未听说过data-use =“ this”或data-use =“ that”。那是一些新的JS语言吗?