用javascript写一个随机的

问题描述 投票:0回答:1

如何在网页中添加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>
javascript random
1个回答
2
投票

您可以随机选择预定义的脚本< 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属性,但这与通过代码添加的脚本无关:它们无论如何都是异步的。所以不需要(但也没有伤害)添加它们。

© www.soinside.com 2019 - 2024. All rights reserved.