2016-04-06 41 views
0

你好我是新的JavaScript,我想单击一个Javascript。我有一个图像与另外2个图像第一个图像会改变,当我点击其他2,但主图像有一个缩放按钮,我想点击脚本来改变缩放图标的href链接,我也不知道如何做到这一点可以有人帮助我?多谢。Javascript的OnClick行动改变href

这是我的代码经过一些研究,但它不起作用。

<article class="javascript html"> 
 
     <script type="text/javascript"> 
 
    function change(menuId, image, newImage, newUrl) 
 
{ 
 
    var img = document.getElementById(image); 
 
    img.src = newImage; 
 
    document.getElementById('d3').href = newUrl; 
 
} 
 
</script> 
 
     <div class="thumbnail"> 
 
      <div id="main_img"> 
 
      <img id="img" src="assets/example/latest/S8621A.png" alt=""/> 
 
      <div class="caption"> 
 
       <span class="ico-block"> 
 
        <a class="ico-zoom" href="assets/example/latest/S8621A.png" id="d3"><span></span></a> 
 
       </span> 
 
      </div> 
 
     </div> 
 
      </div> 
 
     <div style="text-align:center"> 
 
<div id="thumb_img"> 
 
    <img src='assets/img/fekete.png' onclick='changeImage("assets/example/latest/S8621A.png")' > 
 
    <img src='assets/img/barna.png' onclick='changeImage("assets/example/latest/S8621B.png")' onclick='document.getElementById'("d3").href = '(assets/example/latest/S8621B.png)'> 
 
</div></div> 
 
    </article>

+0

你没有触发onclick的'change'功能。你正在触发'changeImage' ... –

+0

那我怎么触发呢? –

回答

0

你必须这样调用该函数:

<img src="path/to/image.png" onclick="change()"> 

参数,属性onclick预计,被命名为change(),这将是功能它会电话:

function change() { 
    // define here what the function will do... 
} 

当你的功能需要一些参数,你可以做到以下几点:

<img src="path/to/image.png" onclick="change(param1, param2, param3, param4)"> 

功能change()目前预计4个参数

function change(param1, param2, param3, param4) { 
    // ... 
} 

这就是你应该如何开始

0
  1. 你的函数定义为changeImage,但在您的onclick处理程序中,您正在调用一个不存在的名为change的函数。

解决方案:onclick="change( ...

  • 你不需要在图像标签中的第二onclick处理程序。功能change包含交换d3 href的代码。

  • 功能change预计4个参数

  • change(menuId, image, newImage, newUrl)

    你只是路过一人在 - 图像的URL,因为这是被传递作为第一个参数,函数change看到它作为参数menuId,所以image,newImagenewUrl都是未定义的。