我想在普通的
JavaScript(不使用jQuery)中添加一个click事件到这样的元素,所以我没有id而是一个类:
<a href="http://example.com/share" class="MyClass">Yummy</a>
解决方法
如果您没有id并且没有任何选择器库并且您希望它在旧版浏览器中工作,则需要更多工作.如果你可以在上面放一个id,那就很简单了.如果没有,则需要更多代码:
var links = document.getElementsByClassName("MyClass"); links[0].onclick = function() { // put your click handling code here // return(false) if you don't want default click behavior for the link }
由于getElementsByClassName在旧版浏览器中并非普遍可用,因此在不存在时需要填充程序来实现它.或者,您可以通过以下方式获取文档中的所有链接:
var links = document.getElementsByTagName("a");
然后循环浏览该列表,直到找到所需的那个(也许检查类名).
<a href="http://braza.com/share" id="specialLink" class="MyClass" >Yummy</a>
然后,它只需要这段代码:
document.getElementById("specialLink").onclick = function() { // add code here }
如果您要定期执行此操作,添加事件侦听器比使用onclick属性更具可扩展性,但如果您没有任何框架,则需要一个函数来添加处理旧版本的事件侦听器IE浏览器