0
if (document.getElementById) {

function alterImg() {
    document.body.getElementById('sendimg').src="url('images/tridown.png')";
}

}

そしてhtml:

<div id="sendbutton">
<img id="sendimg" src="images/tri.png" onclick="alterImg()" />
</div>

私もこのキーワード参照を使用してみましたが、役に立ちませんでした。

4

5 に答える 5

2

コードの 3 つの問題:

  • document .body .getElementByIdを使用しています。" " はbody 要素ではなく のgetElementByIdメソッドです。document
  • css と html を混在させています。srchtml では、画像の属性にURL を割り当てます。CSS では、url(...)背景などの画像を参照するために使用します。
  • if ステートメントで関数宣言を使用しています。これは、if ブロックが実行されるかどうかに関係なく、現在のスコープ (グローバルと仮定します) で関数を宣言することに注意してください。が利用可能な場合にのみ関数を定義したい場合document.getElementByIdは、使用する必要があります
if (document.getElementById) {
    var alterImg = function () {
        document.getElementById('sendimg').src="images/tridown.png";
    }
} 
于 2012-05-17T23:35:15.580 に答える
1

資料。body .getElementById

于 2012-05-17T23:27:09.847 に答える
0

ここにいくつかの問題があります:

  1. src 属性を url() にラップする必要はありません
  2. document.body.getElementByIdの代わりにdocument.getElementByIdを使用する

    関数 alterImg() { document.getElementById('sendimg').src = "images/tridown.png"; }

于 2012-05-17T23:34:09.403 に答える
0

.src="url('images/tridown.png')" から url('') ステートメントを削除します

以下は私のために働いた:

<div id="sendbutton">
<img id="sendimg" src="http://placehold.it/64x64" onclick="alterImg()" />
</div>


<script type="text/javascript">
    if (document.getElementById) {

function alterImg() {
    document.body.getElementById('sendimg').src="http://placehold.it/128x128";
}

}

</script>
​
于 2012-05-17T23:34:55.587 に答える
0

メソッドは、ではなく、オブジェクトでgetElementByIdのみ定義されます。また、このプロパティは CSS プロパティではないため、値として使用することはできません。あなたは単に書くべきです:documentdocument.bodysrcurl(...)

document.getElementById('sendimg').src = images/tridown.png";

のより完全な説明についてはHTMLImageElementMozilla Developer Networkを参照してください。

于 2012-05-17T23:35:31.307 に答える