如何在网页中添加4个预定义的<script>
s中的随机1?
即第三方工具有4个电子书下载模式形式,由独特的<script>
(每个电子书1个)生成。
我想随机地将1个这样的<script>
s添加到页面中,以便在每个页面加载时,显示不同的电子书下载模式表单。
我该怎么做?
我试过了:
var min=1;
var max=4;
var random = Math.random() * (+max - +min) + +min;
switch ($random) {
case 1:
document.write(<script src=""></script>)
break;
但是qazxsw poi中的qazxsw poi关闭了主要的qazxsw poi。我是否需要为</script>
和document.write
使用HTML ascii代码?
帮助赞赏。
更新:
我需要添加的脚本格式如下:
<script>
您可以随机选择预定义的脚本<
URL,然后为其动态添加>
标记:
<script type='text/javascript' async='true' src='https://app.ontraport.com/js/ontraport/opt_assets/drivers/opf.js' data-opf-uid='p2c187780f17' data-opf-params='borderColor=#ec0c8d&borderSize=5px&formHeight=572&formWidth=60%&maxTriggers=2&onExitIntent=true&popPosition=mc&timeframe=1&instance=1067093054'></script>
把它作为src
放在文档的script
部分。
如果远程脚本设计为在// List of possible attributes that script element could get
var scripts = [
{ src: "http://abc/scr1.js", "data-opf-uid": "23", "data-opf-params": "y='a'" },
{ src: "http://abs/scr2.js", "data-opf-uid": "81", "data-opf-params": "x=9" }
];
// Select a random entry from above list
var selected = scripts[Math.floor(Math.random()*scripts.length)];
selected.type='text/javascript';
// Create the script DOM element
var script = document.createElement('script');
// Assign the selected properties to the element as attributes
for (var prop in selected) {
script.setAttribute(prop, selected[prop]);
}
// Add the element to the document
document.head.appendChild(script);
标记中加载,则最后一行应更改为:
script
您在上面的body
对象中定义的属性不需要任何HTML转义:当使用body
将这些属性添加到生成的document.body.appendChild(script);
元素时,需要注意这些属性。您提到您的脚本需要scripts
属性,但这与通过代码添加的脚本无关:它们无论如何都是异步的。所以不需要(但也没有伤害)添加它们。