2016-06-27 6 views
0

gifファイルをjavascriptで置き換えます。私は以下の方法を見つける。私はimgタグの前にjavascriptタグを置くことができる方法はありますか?画像をjavascriptで置き換えます

<img class="myImg" src="compman.gif" width="107" height="98"> 

<script> 
    document.getElementsByClassName("myImg")[0].src = "hackanm.gif"; 
</script> 
+0

なぜしたいですか?あなたはいつでもどこにでもコードを置くことができます。 HTML要素を探しているコード行がその要素が存在するまで実行されないようにするだけです。あなたがここで解決しようとしている実際の問題は何ですか?これはどのように機能しませんか? – David

+0

現在のjavascriptを '$(document).ready(function(){});'(https://learn.jquery.com/using-jquery-core/document-ready/を参照)で囲むと、ページの任意の場所に配置します。 –

答えて

1

ドキュメントが「準備完了」になるまでページを安全に操作することはできません。 jqueryの$(document).ready()を使用すると、ページがロードされ、実行前に操作できるようになるまで待機します(ページ上のどこに関係なく)。例:

<script> 
    $(document).ready(function() { 
     document.getElementsByClassName("myImg")[0].src = "hackanm.gif"; 
    }); 
</script> 
<img class="myImg" src="compman.gif" width="107" height="98"> 

あなたjqueryの内側ができ、また、その後、レバレッジセレクタ(クラスがあなたのクラス、またはIDがIDです$("#id")あるなど$(".class"))とにコードを変更します。

<script> 
    $(document).ready(function() { 
     $(".myImg").attr('src',"hackanm.gif"); 
    }); 
</script> 
<img class="myImg" src="compman.gif" width="107" height="98"> 

そして、あなたはさらに後でjavascriptで変更したい場合は、変数に格納することもできます。

<script> 
    $(document).ready(function() { 
     var myImg = $(".myImg"); 
     var newImg = "hackanm.gif"; 
     myImg.attr('src', newImg); 
    }); 
</script> 
<img class="myImg" src="compman.gif" width="107" height="98"> 

これは、JavaScriptの中にいくつかの新しいトリックを学ぶのに役立ちます。ハッピーコーディング!

More Info

0

私はそれはJavaScriptで置き換えられる前に、OPの主な関心事は、古いイメージのフラッシュだったと思います。私はあなたの画像要素を目に見えて隠すようにCSSの行を追加して、スワップ+ JavaScriptで再表示することをお勧めします。

<style> 
    .myImg {visibility: hidden;} 
</style> 

<img class="myImg" src="compman.gif" width="107" height="98"> 

<script> 
    var imgReplace = document.getElementsByClassName("myImg")[0]; 
    imgReplace.src = "hackanm.gif"; 
    imgReplace.style.visibility = "visible"; 
</script> 
関連する問題