如何操纵javascript脚本属性

时间:2014-06-26 11:34:02

标签: javascript

我有以下脚本:

<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>

但这似乎不起作用,任何想法我的错误在哪里?

2 个答案:

答案 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';