добавить некоторый JavaScript внутри html-элемента привязки тега - PullRequest
0 голосов
/ 21 января 2011

Быстрый вопрос по 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 (или похожим)?

A.

Ответы [ 3 ]

3 голосов
/ 21 января 2011

Если "вписать это в 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
1 голос
/ 21 января 2011

Вы можете установить его через клиентский скрипт, но он сломается, если у пользователя отключен JavaScript.Было бы лучше установить его со стороны сервера, что в вашем случае звучит как PHP.

0 голосов
/ 21 января 2011

с нативным javascript вы можете поместить ссылку «не случайно» и рандомизировать ее с помощью метода setAttiribute, родного для JavaScriptиз нескольких способов, которые безопасны для большинства браузеров.

...