javascript - 如何操作 javascript 脚本属性

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

但这似乎不起作用,知道我的错误在哪里吗?

最佳答案

我会动态插入脚本元素,而不是更改现有脚本元素的 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>

关于javascript - 如何操作 javascript 脚本属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24429444/

相关文章:

javascript - CSS 变换 : rotate only works on image

javascript - 使用 ID 字符串作为 css 属性不起作用

javascript - 我应该怎么做才能避免移动网页上的元素(html、css、jQuery)?

javascript - 使用日期选择器关注下一个表单元素

javascript - keydown 事件删除我的 div 内容

javascript - Node.js连接ftp并下载文件

javascript - 从 React Router 3.x 迁移到 4.x

javascript - 压缩有限字符集的字符串,然后在 JS 中解压

javascript - jq-如何将像素值转换为百分比?

javascript - 如何使用 Javascript 中的 Knockout 计算分组行的小计?