作者kaijajan (喔喔 :o)
看板Ajax
标题[讨论] [jQuery] 相同 class 的按钮对应到个别的事件?
时间Wed Mar 17 10:41:15 2010
这可能不算是 jquery 的问题吧 囧
我弄了一个选单...为求方便所以透过 class 设定每一个按钮的 style
但是碰到要设定每个按钮要设定各别在按下後执行不同的事件
不知道要从那边去指定每个按钮的事件
因为透过 selector 选进来的是 button array
目前只有想到可能在每个 button 加上特定的 attribute 去做辨别
然後用 if else 去判断并执行个别正确的事件
不知道 jQuery 是否有提供较好的机制去做像这样的事呢
按钮的部份大致长像这样子
<div class="button">button 1</div>
<div class="button">button 2</div>
<div class="button">button 3</div>
<div class="button">button 4</div>
<div class="button">button 5</div>
目前是想到可能在每个 div 後面再加上一个 attribute
然後 javascript 的部份
$(".button").each(function(){
if($(this).attr('attr1') == "")
...
});
用这样的方式去做判别
可是这样子的效能似乎不是很好
因为每按一次就会去检查所有的 button 一次
或是指定一个 click 的 function 给所有的 button
$(".button").click(function(){
if($this).attr('attr1') == "")
...
});
感觉都是蛮笨的做法
Orz
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.222.31.54
※ 编辑: kaijajan 来自: 61.222.31.54 (03/17 10:44)
1F:推 lindo0130:我觉得用id,style部份link css档处理应该比较方便 03/17 11:05
2F:→ lindo0130:ex. #btn1, #btn2, #btn3{color:red;} (in xxx.css) 03/17 11:06
3F:→ TonyQ:class又不只限一个 @_@ 另外设立自己的class或id就好啦. 03/17 11:14
4F:→ grence:$(".button").click(function(event){//use event.target 03/17 19:34
5F:推 lovelycateye:如果要跑的function没共通性,用id个别指定比较好? 03/17 22:34
6F:→ lovelycateye:如果有共通性,指定一个共同的funtion再做switch 03/17 22:35
7F:→ lovelycateye:想了一下,也可以考虑用get()取所有跑回圈,但是有 03/17 23:03
8F:→ lovelycateye:缺点:各个function名称可能要用流水号来命名。 03/17 23:03
9F:→ lovelycateye:所以我还是会想用我回文的方法,可以比较明了。 03/17 23:04
10F:→ lovelycateye:switchCenter是controller 里面各个alert当成model 03/17 23:05
11F:推 mesak:乱入一下 $(".button").eq(1).click 03/29 01:49