2013-08-21 71 views
1

只要點擊鏈接,圖像應該被更改。我怎樣才能實現這與JavaScript和HTML?我曾嘗試和收集的信息,並拿出代碼點擊鏈接時如何切換圖像?

<script type="text/javascript"> 
     function changeImage(element) { 
     document.getElementById('imageReplaceTel').src = element;} 
    </script> 

<a href={{callphonenumber}} style="color:white" onclick="changeImage({{asset('bundles/testProject/images/telephoneSelected.png')}})"> 
    <img src="{{asset('bundles/testProject/images/telephone.png')}}" width="54px" height="54px" id="imageReplaceTel" alt="Images"></img></a> 

我希望這會工作,但它失敗了,我可能失去了一些東西,因爲我用JavaScript初學者。謝謝

回答

1

: 「IMG1」 必須用你想改變 「imagefoldername/Imagename2.jpg圖像的編號取代「必須將javascript改爲您要顯示的新圖像的目錄 ,並且必須將」imagefoldername/Imagename1.jpg「更改爲當前顯示的圖像

+0

你也可以通過url作爲變量使它更容易: HTML:'Click here' Javascript:'function Changetheimage(new_src){ document.getElementById(「img1」)。src = new_src; }' –

+0

謝謝你們兩位。我使用Nikkis代碼和Jeffreys方法來傳遞一個變量並且圖像切換工作,但是因爲我使用了Symfony 2(小枝),所以我必須稍作修改,看起來像這樣 - > onclick =「changeImage('{ {asset('bundles/testproject/images/email.png')}}')「 – BCI

+0

仍然有一個問題,正如我在圖像切換之前所說的那樣,但還不夠快。是否有用戶點擊鏈接時立即調用該事件? – BCI

0

最好的方法來做到這一點將與圖像sprite.onclick只是通過javascript更改精靈座標。使用JavaScript和HTML它看起來像這樣

<script type="text/jscript"> 
function Changetheimage() { 
    document.getElementById("img1").src = "imagefoldername/Imagename2.jpg"; 
} 
</script> 
</head> 
<body> 
<a onclick="Changetheimage()">click here</a> 
<img src="imagefoldername/Imagename1.jpg" id="img1" alt="" /> 

+0

因此,而不是onclick sprite.onc舔,然後改變精靈的座標。在哪裏以及如何更改精靈的座標? – BCI

+0

initial css:background-image:url(img_navsprites.gif); background-position:91px 0;在你的鏈接添加onclick事件和調用JavaScript函數,它可以像這樣改變圖像座標:$(「selector」).css(「background-position」,「-51px 0」); –