问一个jquery的问题,高手请进~

shmilyxbq 2010-07-30 02:00:21
js代码对每个链接被点击的事件都有类似的处理,如果通过ID区分被点击的链接需要有4段相似的代码
能不能通过测试(如下js代码),找到被点击的链接,然后进行相应的处理,目的是减少代码量
jquery支不支持点击事件的测试?这个测试该怎样实现呢?谢谢!
jquery要是不行,js能不能实现?

<div id="nihao">
<a id="1" href="url">url</a>
<a id="2" href="url">url</a>
<a id="3" href="url">url</a>
<a id="4" href="url">url</a>
</div>



$("a").click(function () {
//这个时候不知道哪个链接被点击了
$("div").find("a").each(function () {
//这里测试每个链接,看是不是被点击了
});

});


...全文
164 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
一弗楚 2010-07-31
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 pighead_chen 的回复:]

引用 1 楼 ahywg 的回复:
HTML code
<script src="jquery-1.4.2.min.js"></script>

<div id="nihao">
<a id="1" href="#">url</a>
<a id="2" href="#">url</a>
<a id="3" href="#">url</a>
<a id="4" href="#">u……
[/Quote]

这里的visited属性只是随便写的而已,可以用其它名称代替,在这里只是为点击过的链接做个标记,不知道LZ的意思是不是这样
shmilyxbq 2010-07-31
  • 打赏
  • 举报
回复
7楼和8楼一语惊醒梦中人!你们说的是对的,我想复杂了!
kaifadi 2010-07-30
  • 打赏
  • 举报
回复
<script src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(function() {
$("#nihao>a").click(function () {
alert(this.id);//显示出点击事件源的ID.
});
});
</script>
<div id="nihao">
<a id="1" href="#">url</a>
<a id="2" href="#">url</a>
<a id="3" href="#">url</a>
<a id="4" href="#">url</a>
<p>
<a id="11" href="#">url</a>
</p>
</div>
<div id="nihao2">
<a id="5" href="#">url</a>
<a id="6" href="#">url</a>
<a id="7" href="#">url</a>
<a id="8" href="#">url</a>
</div>

这样用应该是最短的了!不知道有没有更简短的方法!
kaifadi 2010-07-30
  • 打赏
  • 举报
回复

<script src="jquery-1.3.2.min.js"></script>
<script>
$(function(){
$("#nihao>a").click(function () {
alert($(this).attr("id"));//弹出id,id都不同么
});
});
</script>
<div id="nihao">
<a id="1" href="#">url</a>
<a id="2" href="#">url</a>
<a id="3" href="#">url</a>
<a id="4" href="#">url</a>
</div>

这样处理就OK了。加个>限制下,以免和页面其他的A连接混合!
passself 2010-07-30
  • 打赏
  • 举报
回复

$("a").click(function(){
alert($(this).attr("id"));
});
stayalive 2010-07-30
  • 打赏
  • 举报
回复
完全不懂什么意思,而且,
$("div").find("a").each(function () {
//这里测试每个链接,看是不是被点击了
});
看起来是毋庸的代码
$("a").click(function () {
//这个时候不知道哪个链接被点击了
//想要怎么处理就怎么处理,为什么一定要知道哪个点击?
});
逍遥庄主 2010-07-30
  • 打赏
  • 举报
回复
有类似的处理 你意思是说对于不同的链接操作不一样么?这里你得到了你点击的是哪个链接 还是要匹配是哪个写操作吧..没看懂你的意思,呵呵.

$("a").click(function(){
var tid = $(this).attr("id");
alert(tid);//这时点不同链接会弹出不同的提示吧
})
marcoak 2010-07-30
  • 打赏
  • 举报
回复

<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function() {
$("a").click(function (e) {
alert(e.currentTarget.id);//显示出点击事件源的ID.
});
});
</script>
</head>
<body>
<div id="nihao">
<a id="1" href="#">url</a>
<a id="2" href="#">url</a>
<a id="3" href="#">url</a>
<a id="4" href="#">url</a>
</div>

</body>
</html>

pigHead_chen 2010-07-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ahywg 的回复:]
HTML code
<script src="jquery-1.4.2.min.js"></script>

<div id="nihao">
<a id="1" href="#">url</a>
<a id="2" href="#">url</a>
<a id="3" href="#">url</a>
<a id="4" href="#">url</a>
</div>

<s……
[/Quote]

IE不支持a :visited属性
hoojo 2010-07-30
  • 打赏
  • 举报
回复

$("a").click(function () {

$("div").find("a").each(function () {
alert($(this).attr("id"));//弹出id,id都不同么
});

});
</script>
一弗楚 2010-07-30
  • 打赏
  • 举报
回复
<script src="jquery-1.4.2.min.js"></script>

<div id="nihao">
<a id="1" href="#">url</a>
<a id="2" href="#">url</a>
<a id="3" href="#">url</a>
<a id="4" href="#">url</a>
</div>

<script>
$("a").click(function () {
$(this).attr("visited",true);
//这个时候不知道哪个链接被点击了
$("div").find("a").each(function () {
alert($(this).attr("visited"));
});

});
</script>

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧