0

これが私のページで、キャプチャを更新する機能があります(「clicca qui」をクリックすると、画像が変更されます)。数か月前は機能していたと 100% 確信していますが、今は何も変更しなければ機能しません。関数の呼び出しは でした<a href="javascript: refreshCaptcha();">。iPhoneでも機能することに気付きました。そのため、「javascript:」構文を受け入れない一部のブラウザーの問題だと思いました。それから私はそれを<a href="#" onclick="refreshCaptcha();return false;">(今のように「ライブ」)に変更しました。これは何も変更されず、iPhone でも動作します (画像が変更されます)。デスクトップ ブラウザーでは変更されません (IE と Firefox で試してみました)。

Firebug コンソールには何も表示されません。

何が起こっていますか?

4

1 に答える 1

0

理由が見つからないようですが、 のように src を取得しようとすると空の文字列が返されますdocument.images[4].src。それはFFでしか起こらないので、私はそこでもっと困惑しています. ただし、 を使用して画像ソースにアクセスし、 を使用.getAttribute("src")して設定できます.setAttribute("src", "value")

次のコードを試してください。

function refreshCaptcha(){ 
  var img = document.images['captchaimg'];
  imgSrc = img.getAttribute("src");
  newImgSrc = imgSrc.substring(0,imgSrc.lastIndexOf("?"))+"?rand="+Math.random()*1000;
  img.setAttribute("src", newImgSrc);
}

また、あなたのサイトへのリンクはご遠慮ください。フィドルにリンクすることは問題ありませんが、サイトでこれらの変更を行うとすぐに、あなたの質問はコミュニティにとって何の役にも立たなくなります.

于 2013-09-13T02:40:28.280 に答える