Javascript 在img中调用onclick?

Javascript 在img中调用onclick?,javascript,css,Javascript,Css,我有几个缩略图,我想点击,并有一个更大的版本弹出的缩略图。我有我正在使用的代码,如果我在标签中设置它作为链接,它就可以工作,但是我似乎无法使拇指指甲img本身可以剪贴 HTML,链接的工作 <li><a href="#" onclick="toggle('widget1')">Toggle</a></li> HTML图像我想点击这里是我已经尝试过的 <div id="wid1"><a href="#" onclick="tog

我有几个缩略图,我想点击,并有一个更大的版本弹出的缩略图。我有我正在使用的代码,如果我在标签中设置它作为链接,它就可以工作,但是我似乎无法使拇指指甲img本身可以剪贴

HTML,链接的工作

 <li><a href="#" onclick="toggle('widget1')">Toggle</a></li>
HTML图像我想点击这里是我已经尝试过的

<div id="wid1"><a href="#" onclick="toggle('widget1')"><img src="widLayOut1.jpg"   
height="200" width="200" /></a></div>

HTML的其余部分

<div id="widget1" style="display:none"><img src="widget1.jpg" /></div>
enter code here

在这里输入代码

想法

您应该能够像其他元素一样向图像中添加单击事件。首先添加一个id

<img id="yourImg" src="widLayOut1.jpg"
当然,如果你想支持旧的浏览器,你必须做更多的工作

var img = document.getElementById("yourImg");

if (img.addEventListener)
    img.addEventListener("click", function(){
        alert("You clicked the image");
    });
else if (img.attachEvent)
    img.attachEvent("onclick", function(){
        alert("You clicked the image");
    });
 else 
     alert("What are you using?!");  
编辑

我想得太多了

document.getElementById("yourImg").onclick = function() {
    alert("You clicked the image");
};

应该很好用。谢谢
mplungjan

我在你的HTML中没有看到ID为“widget1”的元素。对不起,我也忘了添加一点,当我发布时,它现在就在那里。为什么单击图像而不是链接很重要?通过链接,您可以免费获得指针。仍然记得在链接上返回false,就像我在你提出的另一个非常类似的问题中向你展示的那样。也许你会帮我们的忙,告诉我们你想要实现什么-也许你看错了方向。。。除了这里不赞成的内联单击处理程序和缺少的returnfalse之外,我不知道您使用的代码会有什么问题posted@mplungjan这并不重要,我只是希望它能发挥作用。我没有完全理解你的代码中发生了什么,这就是为什么我没有适应它。但我现在已经解释了,更好吗?为什么我们不能务实地去做
document.getElementById(“yourImg”)。onclick=function(){}
它适用于我所知道的所有浏览器,从IE4开始,或许是NS3不喜欢img。onclick@mplungjan-务实是好的-谢谢,我更新了我的答案。和+1:)
var img = document.getElementById("yourImg");

if (img.addEventListener)
    img.addEventListener("click", function(){
        alert("You clicked the image");
    });
else if (img.attachEvent)
    img.attachEvent("onclick", function(){
        alert("You clicked the image");
    });
 else 
     alert("What are you using?!");  
document.getElementById("yourImg").onclick = function() {
    alert("You clicked the image");
};