2016-09-26 11 views
1

私の文書の先頭にスタイルが指定されています。私は部門の背景画像を指定しますが、後でユーザーがリンクをクリックした場合には変更する必要がありますが、私がやろうとしたことはすべて拒否されます。画像のsrcを変更している間に除算の背景画像を変更する

<style type="text/css"> 
      /*Some CSS*/ 
      .large { 
       background: url('/images/artwork1.jpg') no-repeat; 
} 
</style> 

<div class="large"></div> 
<img id="main_image" alt="Image"/> 
<img onclick="javascript:document.getElementById('main_image').sr‌​c='/images/artwork2.‌​jpg'; $('.large').css({'background-image':'url(/images/artwork2.jp‌​g)';" alt="Change Image"/> 

背景のイメージをスタイルから外してみましたが、リンクをクリックしても変更されませんでした。私はJavaScriptとjQueryを試しました。 jQueryで追加するまでイメージを変更できました。

+0

任意の違いはありませんでした読めない –

答えて

3

あなたの構文に誤りがあります。

これを試してください。

javascript:document.getElementById('main_image').sr‌​c='/images/artwork2.‌​jpg'; $('.large').css('background-image', 'url(/images/artwork2.jp‌​g)');

+0

method.veryを作成します。 –

+0

コンソールにエラーが表示されますか? – sed

+0

何もありません。コンソールには何のメッセージも表示されませんでした。 –

0

あなたには、いくつかの構文の問題を抱えているほかに、あなたは本当にonclickイベント属性にすべてをかける機能であなたのJSをカプセル化し、そしてべきではありません!または、jQueryだけを使用してリスナーを登録します。

jQueryと言えば、なぜプレーンJSとjQueryセレクタを混在させるのですか?既にjQueryを利用できる場合は、それを使用することができます!

function myFunction() { 
 
    $("#main_image").attr("src", "https://dummyimage.com/150x100/ff0000/fff"); 
 
    $(".large").css("background-image", "url(https://dummyimage.com/150x100/ff0000/fff)"); 
 
};
div, img { 
 
    width: 150px; 
 
    height: 100px; 
 
    margin-bottom: 10px; 
 
} 
 
.large { 
 
    background: url('https://dummyimage.com/150x100/000000/fff') no-repeat; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div class="large"></div> 
 
<img id="main_image" alt="Image" /> 
 
<button onclick="myFunction()">change image</button>

関連する問題