使用jQuery在所有A标签上添加单击处理程序

时间:2016-11-07 15:07:59

标签: jquery

尝试使用jQuery在所有A标记上添加点击事件处理程序。尝试使用和不使用document.ready,也使用document.getElementsByTagName("a");没有运气。它记录“document is ready”但不附加事件侦听器。谢谢你的帮助!

$( document ).ready(function() {
   console.log('document is ready');
    $('a').each(function(){
        $(this).addEventListener("click", 
            function (event) {
                console.log(event);
                event.preventDefault();
            }, false
        );
    });
});

3 个答案:

答案 0 :(得分:3)

使用jquery选择器实际上并不需要手动将单击处理程序附加到每个元素 - 而是可以将处理程序附加到与选择器匹配的任何元素。

$('a')会匹配页面上的任意 <a>标记,因此在这种情况下它应该足够了。

$( document ).ready(function() {
   console.log('document is ready');
    $('a').click(function( event ){
      console.log(event);
    });
});

在您的点击处理程序中,this上下文将设置为实际点击的元素。

    $('a').click(function( event ){
      // "this" is the <a> that triggered the event.
      // "$(this)" is the same element in a jquery wrapper.
    });

答案 1 :(得分:0)

试试这个

&#13;
&#13;
$(document).ready(function() {
   console.log('document is ready');
    $('a').each(function(){
        $(this).click(function(e){
			e.preventDefault();
		  
		  }); 
 
    });
});
&#13;
&#13;
&#13;

答案 2 :(得分:0)

使用此:

$(document).on("click", 'a', function (event) {
            alert(event);
            event.preventDefault();
        });