我有以下脚本:
<script id="lol" type="text/javascript" src="http://pn.lol.de/get_trans.cgi?cpid=1&tid=999999&produkt=7&umsatz=0&kunde=raffle_201406&js=1"></script>
我希望'src'属性的tid是一个随机数,而不是999999,所以我在它之前写了一个试图改变它的脚本:
<script>
var transactionId = Math.floor(Math.random() * 100000); //Generate pseudorandom id
var element = document.getElementById("lol");
var newsrc = "http://pn.lol.de/get_trans.cgi?cpid=1&tid=" + transactionId + "&produkt=7&umsatz=0&kunde=raffle_201406&js=1";
element.setAttribute("src", newsrc);
</script>
但这似乎不起作用。难道我做错了什么?这是实现这个目标的更好方法吗?
更新
我想要的是以下代码,但在src上使用随机tid参数:
<script type="text/javascript" src="http://pn.lol.de/get_trans.cgi?cpid=1&tid=t26673&produkt=Raffle201406&umsatz=1&kunde=raffle_201406&js=1"></script>
<noscript><img src="http://pn.lol.de/get_trans.cgi?cpid=1&tid=t26673&produkt=Raffle201406&umsatz=1&kunde=raffle_201406" height="3" width="2" border="0" /></noscript>
所以我写了以下内容:
<script>
var transactionId = Math.floor(Math.random() * 100000); //Generate pseudorandom id
var element = document.createElement('script');//Create new script element
var newsrc = "http://pn.lol.de/get_trans.cgi?cpid=1&tid=" + transactionId + "&produkt=Raffle201406&umsatz=0&kunde=raffle_201406&js=1";
element.setAttribute("src", newsrc);
element.setAttribute("type","text/javascript");
var elementNoscript = document.createElement('noscript');//Create new script element
var elementImg = document.createElement('img');
elementImg.setAttribute("src",newsrc);
elementImg.setAttribute("height",3);
elementImg.setAttribute("width",2);
elementImg.setAttribute("border",0);
document.body.appendChild( element ); // Insert it into document
elementNoscript.appendChild(elementImg);
document.body.appendChild( elementNoscript );
</script>
但这似乎不起作用,任何想法我的错误在哪里?
答案 0 :(得分:3)
我会动态插入脚本元素,而不是更改已存在的src属性。这应该是肯定的:
<script>
var transactionId = Math.floor(Math.random() * 100000); //Generate pseudorandom id
var element = document.createElement('script');//Create new script element
var newsrc = "http://pn.discavo.de/get_trans.cgi?cpid=1&tid=" + transactionId + "&produkt=7&umsatz=0&kunde=raffle_201406&js=1";
element.setAttribute("src", newsrc);
document.body.appendChild( element ); // Insert it into document
</script>
答案 1 :(得分:0)
尝试喜欢
document.body.appendChild(document.createElement('script')).src='New JS Likns';