我有一些潜水,每次潜水的身份都像波纹管一样。 我想当用户点击我的HTML时,首先找到点击的元素是div,然后想要获得所选div的id和内部HTML。
我不想在我的div元素上使用像onclick()和..这样的方法,jquery或somethings可以这样吗?
<div id="a2">123</div>
<div id="a1">456</div>
我使用此代码但不起作用
$('html').click(function () {
var selectedelement = jQuery('div');
});
答案 0 :(得分:3)
$('.someClassForYourDivs').click(function () {
var selectedelement = $(this);
});
jQuery中this
的值通常设置为触发事件的任何对象。此外,正如cernunnos指出的那样,您应该将此单击处理程序添加到所需的特定元素中。为它们分配一个类以使其变得容易。
答案 1 :(得分:2)
您的选择器正在向“HTML”节点添加点击事件。如果你关心的都是div,我想推荐f9ollowing,因为选择器会得到任何DIV:
$('div').click(function () {
var selectedelement = this;
});
如果您只关心ID为'a1'abd'a2'的DIV,请执行以下操作:
$('#a1,#a2').click(function () {
var selectedelement = this;
});
答案 2 :(得分:2)
$('div').click(function () {
var selectedelement = $(this).attr('id');
alert(selectedelement);
});
答案 3 :(得分:0)
你可以使用委托,如果你动态地将div添加到页面,它可以很好地运行:
$("html").on("click", "div", function() {
console.log($(this).attr("id"));
});
看到这个小提琴:http://jsfiddle.net/DGeF9/