【发布时间】:2012-11-19 12:36:45
【问题描述】:
我的最后一个问题在这里:Get last clicked item id 并且有很好的答案,但我仍然有问题。
我有这样的功能:
$(document).ready(function () {
$("*").click(function () {
alert($(this).attr('id').toString());
});
});
在页面上我有这样的东西:
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<script language="javascript" src="Scripts/jquery-1.4.1.js" type="text/javascript"><script>
<div id="div1">Some stuff
<div id="div2">Some other stuff
<asp:Button ID="Button1" runat="server" Text="Button" />
<div id="div3">More stuff
<asp:Button ID="Button2" runat="server" Text="Button" />
</div>
</div>
当 Alertbox 出现时,我可以像这样存储单击项目的值:
$(document).ready(function () {
$("*").click(function (e) {
alert($(this).attr('id').toString());
var value = $(this).attr('id').toString();
e.stopPropagation(); //Stop Propagation
});
});
但这就是问题所在。当我停止传播时,我的其他脚本不再触发。 我能以某种方式获得气泡订单或 ID 吗?我可以这样做吗?:
$(document).ready(function () {
$("*").click(function (e) {
if(e.target == this[0])
{
alert($(this).attr('id').toString());
var value = $(this)[0].attr('id').toString();
}
//e.stopPropagation(); //I have to get first value from bubbling without stopPropagation
});
});
谢谢!
【问题讨论】:
-
不带括号。
if(ev.target === this){
标签: jquery event-bubbling