2016-04-07 21 views
0

Asp.net mvc kullanıyorum.Javascript - Resmi seçerek imaja göre değiştir

ben şöyle iki simge/resimleri var:

<div class="gallery-preview-img" id="forest"> 
            <a href="#"><img onclick="changeImage()" src="~/Content/themes/base/images/forest_icon.png"></a> 
           </div> 
<div class="gallery-preview-img" id="urban"> 
            <a href="#"><img onclick="changeImage()" src="~/Content/themes/base/images/urban_icon.png"></a> 
           </div> 

Senaryo:

 $(function changeImage() { 
     $('#forest').click(function() { 
      if (!(document.getElementById('forest').src.match('forestG'))) { 
       document.getElementById('forest').src = "~/Content/themes/base/images/forestG.png"; 
       if (!(document.getElementById('urban').src.match('urban_icon')) { 
        document.getElementById('urban').src = "~/Content/themes/base/images/urban_icon.png"; 
       } 
      } 
      document.getElementById('env').value = 'Forest'; 
     }) 
     $('#urban').click(function() { 
      if (!(document.getElementById('urban').src.match('urbanG')) { 
       document.getElementById('urban').src = "~/Content/themes/base/images/urbanG.png"; 
       if (!(document.getElementById('forest').src != 'forest_icon')) { 
        document.getElementById('forest').src = "~/Content/themes/base/images/forest_icon.png"; 
       } 
      } 
      document.getElementById('env').value = 'Urban'; 
     }); 
    } 
}); 

resim/simgeler değişiyor değildir Ancak. Yanlış yaptığım herhangi bir fikrin var mı?

+0

yardımcı olur umarım? – maleeb

+0

edited - –

+0

neden "$ (function changeImage() {" ve aynı zamanda "$ ('# forest') kullanıyorsunuz? Tıklayın (function() {" bir tıklamayı kontrol etmek için bunlardan biri çok fazla. Sadece jquery click promise kullanın. js'yi "$ (function changeImage() {" ve html'de onclick = "changeImage()" etiketinden kaldırın. – maleeb

cevap

0

Yapmaya çalıştığınıza inandığım şeyin bir bağlantısı. Bence şu anki yaklaşımınız biraz fazla karmaşık. u HTML'nize üzerinde #forest veya #urban kimlik kullanan bu nerede

https://jsfiddle.net/stevenkaspar/qs8L20wt/

<img onclick='changeImage(event);' src='/path/to/image.png'/> 

function changeImage(event){ 
    document.getElementById('destination').src = event.target.src; 
} 
+0

iki simge/A ve B resimlerine sahip olmaktır. A seçildiğinde, görüntüyü C olarak değiştirir (ve B'nin D olmaması anlamına gelir), B seçildiğinde, görüntüyü D olarak değiştirir (ve A'nın C olmadığından emin olur) –

+0

B ise D olur mu? –

+0

İki simgeye sahip olduğunu düşünün ve kullanıcı bir tane seçecektir .. Seçimden sonra, simge seçilen rengi değiştirir (yani resim) Bu durum netleşir mi? –

İlgili konular