2015-03-30 12 views
0
<img src="generate.php" id="captchaimg"/> 
    <a href="javascript:void(0);" onclick="document.getElementById('captchaimg').src='generate.php';">Not readable? Change code.</a> 

Я знаю, что этот вопрос уже задавали, но методы, описанные в том, что не работает для меня, или я не знаю, как правильно использовать. Я использовал код как inline, и я создал обычную функцию Javascript и eventhough, но я проверил код JQuery при щелчке, но изображение не загружается в Firefox, тогда как изображение Captcha правильно загружается в Chrome, когда я нажимаю Not Readable, поэтому, пожалуйста, Помогите мне, друзья, чтобы исправить проблему. Спасибо заранее. Чувак !!!document.getElementById не работает в Firefox

+3

Есть ли у вас какие-либо ошибки в консоли? – Shamoon

+1

В приведенном примере src изображения совпадает с src в onclick, я предполагаю, что firefox не перезагрузит изображение, это src то же самое. – Salketer

+2

Знаете ли вы, что это 'getElementById', это не работает? Скорее всего, FF видит то же изображение 'src', которое установлено, а не перезагружает изображение. Попробуйте добавить [« кэш-брейкер »] (http://stackoverflow.com/questions/1077041/refresh-imag e-with-a-new-one-at-the-same-url) –

ответ

0

firefox не загружает контент, потому что источник тот же. Я просто добавить дату и время, чтобы сделать это в качестве нового крепления источника и погорячился
кредиты: кэш прерыватель»- Джеймс Торп, Salketer

<img src="generate.php" id="captchaimg"/> 

<a href="javascript:void(0);" onclick="document.getElementById('captchaimg').src='generate.php?'+ new Date().getTime();">Not readable? Change code.</a> 
+0

это звучит очень хакерски – jbutler483

2

Я думаю, что ваш пример выше, возможно, не работает, потому что когда вы обновляете captcha, вы устанавливаете атрибут src на generate.php, который точно такой же, как и раньше. Возможно, Firefox думает, что не стоит повторно извлекать изображение, поскольку используется один и тот же URL-адрес. Чтобы обойти это, я ничего не установил src, а затем установил его обратно на generate.php.

Также лучше использовать более сложные Javascript из ваших HTML-элементов и переместить их в свой собственный скрипт. В качестве основного примера, вы могли бы попробовать что-то вроде этого:

<img src="generate.php" id="captchaimg" /> 
<a id="regenerateLink" href="#">Not readable? Change code.</a> 

<script> 
var captcha = document.getElementById('captchaimg'); 
var regenerateLink = document.getElementById('regenerateLink'); 

regenerateLink.onclick = function() { 
    captcha.src = ""; 
    captcha.src = "generate.php"; 
}; 
</script> 

Пожалуйста, обратите внимание, что есть еще много, чтобы улучшить здесь, и я бы не стал рассматривать производство код готов, но это только начало :)

Смежные вопросы