2017-01-24 17 views
0

リンクをクリックすると、アクティブリンクの背景画像を追加します。 これは私のコードですが、機能していません。..onclickイベントで背景イメージを追加する方法は?

HTML

<table border="0" cellpadding="0" cellspacing="0" width="100%"> 
    <tr> 
    <td style="width:7%;" align="center"> 
     <a href="Home.aspx" id="DashboarHome">Home</a> 
    </td> 
    <td style="width:9%;" align="center"> 
     <a href="Request.aspx" id="Dashboard">Requests</a> 
    </td> 
    <td style="width:66%;" align="center">&nbsp; 
    </td> 
    </tr> 
</table> 
+0

(画像があり、警告を閉じた場合) tippとして:JavaScriptを使ってCSSを書くのではなく、あなたのスタイルシートにCSSクラスを定義し、JSを介してこのクラスを追加/削除する方が簡単です。 –

答えて

0

こんにちはしかし私は、コンテナの変更の背景画像をお勧めします私は...あなたのために準備したこのフィドルをチェックアウトする際のリンクアクティブリンクの代わりに変更します。 https://jsfiddle.net/samcyn/hyqqo84a/

<table border="0" cellpadding="0" cellspacing="0" width="100%"> 
    <tr> 
    <td style="width:7%;" align="center"> 
     <a href="#" class="content_menu" id="DashboardH" data-image="https://i.ytimg.com/vi/H8Y9KX8GYAk/hqdefault.jpg">Home</a> 
    </td> 
    <td style="width:9%;" align="center"> 
     <a href="#" class="content_menu" id="DashboardREQ" data-image="https://images-na.ssl-images-amazon.com/images/G/01/img15/pet-products/small-tiles/23695_pets_vertical_store_dogs_small_tile_8._CB312176604_.jpg">Requests</a> 
    </td> 
    <td style="width:66%;" align="center">&nbsp; 
    </td> 
    </tr> 
</table> 

<div id="check"> 
</div> 

const links = document.querySelectorAll('a'); 
const check = document.getElementById('check'); 
function clickHandler(){ 
    //alert(this.dataset.image); 
    //here's what you wanted 
// this.style.backgroundImage = `url(${this.dataset.image})`; 
//my suggestion 
check.style.backgroundImage = `url(${this.dataset.image})`; 

} 
links.forEach(function(link){ 
    link 

.addEventListener( 'クリック' と、clickHandler); });

+0

すべてのリンクバックグラウンドイメージは同じです。私は現在のページのURLを取得する必要がありますテキストの後に私は画像を適用する必要があります – Elina

+0

が動作していません – Elina

+0

あなたは私を助けてくださいこれは私を助けてください – Elina

関連する問題