“onclick”事件不会触发图像来更改它

时间:2017-06-10 15:17:42

标签: javascript html css

&

    

<script>
    function click()
    {
        var username = prompt("Enter ur name:");
        if(username)
        {
            alert("Hi,"+username);
            document.getElementById("rockPic").src = "rocksmile.jpg";
        }
    }

</script>

在此代码中单击图像时,必须显示“提示”框。但它什么都不做。请帮忙!

3 个答案:

答案 0 :(得分:1)

click已经是原生的javascript函数。它模拟鼠标点击。 https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/click

为您的功能使用其他名称。

PS - 你的标签有一堆语法错误。移除;heightwidth不需要单位,只需数字,而align已在img上废弃在html5中。

&#13;
&#13;
<script>
  function myFunc() {
    var username = prompt("Enter ur name:");
    if (username) {
      alert("Hi," + username);
      document.getElementById("rockPic").src = "rocksmile.jpg";
    }
  }
</script>

<img id="rockPic" src="http://kenwheeler.github.io/slick/img/fonz1.png" alt="irock" height="200" width="200" style="cursor:pointer" onclick="myFunc()">
&#13;
&#13;
&#13;

答案 1 :(得分:0)

使用不同的函数名称和实际可访问的图像,它可以在这里工作:

&#13;
&#13;
function my_function()
    {
        var username = prompt("Enter ur name:");
        if(username)
        {
            alert("Hi,"+username);
            document.getElementById("rockPic").src = "http://placehold.it/200x200/d95";
        }
    }
&#13;
<img id = "rockPic" 
    align = "center"
    src = "rock.jpg"
    alt = "irock"
    height = "200px" 
    width = "200px"
    style = "cursor:pointer;"
    onclick = "my_function();">
&#13;
&#13;
&#13;

答案 2 :(得分:0)

根据文档,&#34; onClick&#34;的字符串值handler属性被解释为处理函数的主体。现在,已经有了一个名为“点击”的功能。为了调用事件处理程序,声明具有相同名称的另一个函数将基本上覆盖本机单击。

&#13;
&#13;
 function clickAction()
  {
        var username = prompt("Enter ur name:");
        if(username)
        {
            alert("Hi,"+username);
            document.getElementById("rockPic").src = "rocksmile.jpg";
        }
    }
&#13;
   <img id = "rockPic" 
    align = "center" 
    src = "rock.jpg"
    alt = "irock" 
    height = 200px
    width = 200px
    style = "cursor:pointer"
    onclick = "clickAction()">
   
&#13;
&#13;
&#13;