2012-11-16 88 views
1

我試圖改變圖像的透明度我按一下紅色按鈕 之後,而不是添加不同的圖像,我不應該看到的新形象jQuery的不透明度不工作

我的JS代碼上的紅色按鈕在下面。

http://jsfiddle.net/mwPeb/7/

<script> 
    $(document).ready(function() { 
     $(".specialHoverOne").hover(function() { 
      // alert("i am here"); 
      $(".ctaSpecialOne").css("visibility", "visible"); 

     }, 

     function() { 
      $(".ctaSpecialOne").css("visibility", "hidden"); 
     }); 

     $(".ctaSpecialOne").click(function (e) { 
      alert("clicked"); 
      e.preventDefault(); 
      //$(this).closest('.specialHoverOne').unbind("mouseenter").end().parent().siblings('a').children("img").attr("src", //"http://imgs.zinio.com/magimages/62898189/2012/416242497_200.jpg");     
      $(this).css({ 
       'opacity': 50 
      }); 

     }); 

    }); 
</script> 

回答

1

我花了一些質量時間清理編碼在這裏,有點難以找到任何東西,結構有點難以遵循。

如果我的理解正確,我相信這是你需要讓紅色按鈕上方的圖像改變不透明度,當點擊紅色按鈕時所需的線條。

$(this).parent().prev().prev().css({'opacity':.5}); 

更具體地說;

$(".ctaSpecialOne").click(function (e) { 
    e.preventDefault();    
    $(this).parent().prev().prev().css({'opacity':.5}); 
}); 

http://jsfiddle.net/mwPeb/11/

+0

+1。所有更多理由清理代碼並傳入需要不透明度的ID。 – ethorn10

+0

@douglas:謝謝你的回覆我正試圖挽救這種不透明https://docs.google.com/open?id=0B5pgxrT9wSU7bUx0Ql9sOVFzb0E – user1828505

+0

@douglas:我們可以讓紅色按鈕完全隱藏,一旦圖像被添加...自從鼠標懸停後,我再次看到紅色按鈕 – user1828505

0

你想要的紅色按鈕的不透明度來改變點擊?或者上面的圖像?對於初學者來說,設置不透明度,你會改變你的行:

$(this).css({'opacity':50}); 

到:

$(this).css({ opacity: 0.5 }); 

在當前的小提琴,你會看到那臺紅色按鈕的不透明度。如果你想讓它設置別的東西,你現在有語法。

更新: 相反配線了一堆。點擊的(),即重複相同的代碼的事件,可能是最好創建一個函數

function setThisOpacity(id) { 
    $("#" + id).css({ opacity: 0.5 }); 
    //do other stuff if you need to 
} 

然後在你的HTML標記,只是加onclick="setThisOpacity(someID);"其中someID是要設置不透明度的項目的實際ID。

+0

@ ethom10:感謝您的回覆,我想改變形象 – user1828505

+0

@ethom的不透明度:感謝您的回覆,但我無法看到更改http://的jsfiddle。 net/mwPeb/10/i爲DOM遍歷添加了id和js user1828505