簡體   English   中英

在html錨標記href元素內添加一些JavaScript

[英]add some javascript inside a html anchor tag href element

快速的JavaScript問題...

我不會為此煩(讓我只說IE),但我需要以下HTML:

href="includes/jwplayer/player.swf?3&file=nicki.mp4"

具有通過javascript生成的隨機數,其中上例中為“ 3”。 像這樣:

href="includes/jwplayer/player.swf?[RANDOM NUMBER CODE HERE]&file=nicki.mp4"

我知道js代碼是:

Math.floor(Math.random() * 1000)

但是我該如何適應HTML?

唯一的答案是一些PHP(或類似)嗎?

一種。

如果“將其與HTML相匹配”的意思是“向看起來像這樣的每個鏈接添加一個隨機數” ,則可以執行以下操作:

$("a[href^=includes/jwplayer/player.swf]").attr("href", function (i, s) {
  return s.replace( /\?\d*&?/, "?" + Math.floor(Math.random() * 1000) + "&" );
})

如果不是<a>帶有href元素,請相應地更改選擇器。

正則表達式說:

\?   # a question mark
\d*  # any number of digits (to replace what's already there)
&?   # an optional ampersand

您可以通過客戶端腳本進行設置,但是如果用戶關閉了JavaScript,這將中斷。 最好從服務器端進行設置,這聽起來像是您的PHP。

使用原生javascript,您可以放入“非隨機”鏈接,並使用JavaScript原生的setAttiribute方法將其隨機化

var r = Math.floor(Math.random() * 1000);
document.getElementById('an-id-of-the-link').setAttribute('href', 'includes/jwplayer/player.swf?' + r + '&amp;file=nicki.mp4');

請注意,使用舊版本的瀏覽器時,選擇對象變得更加困難,因此getElementById是大多數瀏覽器中安全的幾種方法之一。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM