Javascript jQuery—如何在使用';单击';事件
我使用jQuery来点击一个“a”元素。我有一个链接列表,每个链接都有一个类,由他来捕获点击 我想知道哪些链接被点击了(每个链接都有一个属性'setid'),并且还想知道鼠标被点击的位置 如何做到这一点 代码示例:Javascript jQuery—如何在使用';单击';事件,javascript,jquery,Javascript,Jquery,我使用jQuery来点击一个“a”元素。我有一个链接列表,每个链接都有一个类,由他来捕获点击 我想知道哪些链接被点击了(每个链接都有一个属性'setid'),并且还想知道鼠标被点击的位置 如何做到这一点 代码示例: <a href="#" class="newItem" setid="28">click me</a> $('.newItem').click(function (e) { alert(e.attr('setid')); }); $('.newI
<a href="#" class="newItem" setid="28">click me</a>
$('.newItem').click(function (e) {
alert(e.attr('setid'));
});
$('.newItem')。单击(函数(e){
警报(e.attr('setid'));
});
编辑:
好的,为了得到这个职位,我将使用e.pageX来使用jQuery方法,您必须通过调用jQuery来包装这个
$('.newItem').click(function () {
alert($(this).attr('setid'));
});
你在正确的道路上
$(function(){
$('.newItem').click(function () {
alert( $(this).attr('setid') );
})
});
您的代码在获取属性方面几乎是正确的。唯一缺少的是在jQuery包装器中包装
这个(一个DOM元素),这样您就可以使用jQuery函数了<代码>$(this).attr('setid')
应该可以工作
要获取页面坐标,请使用事件对象的pageX
和pageY
属性。因此:
$('.newItem').click(function (e) { // e is the event object
alert($(this).attr('setid'));
alert(e.pageX);
alert(e.pageY);
});
请参阅上的文档。就像Skylar在对您的问题的评论中所说的那样,您可以在新属性(HTML5有效)前面使用“数据-”
它甚至比其他人提到的attr()好一点。有关更多示例,请参见此-参考下面给出的代码:
document.getElementById("element_id").addEventListener("click",function(e)
{
console.log(e.srcElement.getAttribute("data-name"));
},false);
如果您要向HTML中添加任意属性,比如“SETID”,您可能需要考虑添加“数据”标志,因为这将通过验证。实际上setid=“28”是无效的,但是data setid=“28”是.Michael-感谢您的代码:)您好,当使用IE9作为锚标记时,我对.click(函数(e)){}有一些问题。知道如何在不使用JQuery的情况下获取属性吗?单击?示例:当您使用普通JS和JQuery$(此)作为新问题提问时,函数doClickFunction(){$(this).attr('class');}不起作用。非常好。非常感谢。我在找一个普通的方法来做这件事。
var setid = $(this).data("foo");
document.getElementById("element_id").addEventListener("click",function(e)
{
console.log(e.srcElement.getAttribute("data-name"));
},false);