我正在尝试获取最后一次单击元素的类或id。这就是我所发现的here ...
HTML
<a href="" class="button">Button</a>
JQUERY
$('.button').click(function () {
myFuntion();
});
function myFunction (e) {
e = e || event;
$.lastClicked = e.target || e.srcElement;
var lastClickedElement = $.lastClicked;
console.log(lastClickedElement);
}
这种做了我想要的,但我不知道如何修改它,所以我可以得到这个类。
我也尝试使用this解决方案但无法使用我的代码。
$('.button').click(function () {
myFuntion();
});
function myFunction(){
var lastID;
lastID = $(this).attr("id");
console.log(lastID);
}
当我这样做时,我的控制台日志会以未定义的形式返回。我可能错过了一些明显的东西。任何帮助深表感谢。感谢。
答案 0 :(得分:1)
有几种想法:
$(".button").click(myFunction);
应该使用上述myFunction
。
$(".button").click(function () { myFunction($(this)); });
function myFunction($elem) {
var lastID;
lastID = $elem.attr('id');
$.data('lastID', lastID);
}
答案 1 :(得分:1)
您可以将clicked元素作为参数传递给您的函数:
$('.button').click(function () {
myFunction(this);
});
function myFunction(element) {
console.log(element);
console.log(element.id);
console.log($(element).attr("class"));
}
更新添加了jsfiddle
答案 2 :(得分:1)
为了获取元素的类名,假设您对要从中检索数据的元素有准确的引用:
var lastClickedElement = $.lastClicked,
lastClickedElementClassNames = lastClickedElement.className;
这确实会返回元素的所有类的完整列表。
答案 3 :(得分:1)
$('.button').click(function () {
myFuntion(this);
});
function myFunction(ele){
var lastID;
lastID = $(ele).attr("id");
console.log(lastID);
}
答案 4 :(得分:0)
首先选择所有可能的DOM元素
var lastSelectedElement = null
$(document).ready(function(){
$("*").live("click",function(){
lastSelectedElement = $(this);
myFunction($(this));
});
});
function myFunction(element) {
console.log(element);
console.log(element.id);
console.log($(element).attr("class"));
}
通过使用jQuery lastSelectedElement
抓取它的ID或类,可以使用.attr("ID OR CLASS");
。