jQuery-使用“ click”事件时如何获取元素的属性

2021/01/30 19:21 · jquery ·  · 0评论

我正在使用jQuery来单击“ a”元素。我有这些链接的列表,其中每个链接都有一个类,由他捕获我的点击。

我想知道单击了哪些链接(每个链接都有一个属性“ setid”),并且还获得了单击鼠标的位置。

如何做到这一点?

代码示例:

<a href="#" class="newItem" setid="28">click me</a>

$('.newItem').click(function (e) {
    alert(e.attr('setid'));
});

编辑:确定,所以要获得该位置,我将使用e.pageX

使用jQuery方法,你必须包装与jQuery的一个电话。

$('.newItem').click(function () {
    alert($(this).attr('setid'));
});

请参阅下面给出的代码:

document.getElementById("element_id").addEventListener("click",function(e)
{
 console.log(e.srcElement.getAttribute("data-name"));
},false);

就像Skylar在对问题的评论中说的那样,您可以在新属性(HTML5有效)前面使用“ data-”。

<a href="#" class="newItem" data-setid="28">click me</a>

然后在jQuery(v1.4.3 +)中,您可以像这样获得它:

var setid = $(this).data("foo");

它甚至比其他人提到的attr()好一点。看到更多示例-http: //www.broken-links.com/2010/11/18/data-attributes-in-html-and-jquery/

您走在正确的道路上。

$(function(){

    $('.newItem').click(function () {
        alert( $(this).attr('setid') );
    })
}); 

您的代码几乎可以正确获取该属性。唯一缺少的是this在jQuery包装器中包装(一个DOM元素),因此您可以使用jQuery函数。$(this).attr('setid')应该管用。

要获取页面坐标,请使用事件对象pageXpageY属性。所以:

$('.newItem').click(function (e) { // e is the event object
    alert($(this).attr('setid'));
    alert(e.pageX);
    alert(e.pageY);
});

请参阅有关事件对象的文档

本文地址:http://jquery.askforanswer.com/jquery-shiyong-clickshijianshiruhehuoquyuansudeshuxing.html
文章标签: ,  
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!