westup
V2EX  ›  问与答

javascript如何写多个对象绑定同一事件?

  •  
  •   westup · Apr 14, 2011 · 9332 views
    This topic created in 5563 days ago, the information mentioned may be changed or developed.
    比如:a,b,c三个变量分别代表不同的3个html元素,都绑定同一个click事件,
    (a,b,c).click(function () {
    alert("text");
    }
    这样写对吗?
    9 replies    1970-01-01 08:00:00 +08:00
    spark
        1
    spark  
       Apr 14, 2011
    你写的这应该是jQuery?

    $('#id1,#id2,#id3').click(function(){
    alert('hey!');
    })
    westup
        2
    westup  
    OP
       Apr 14, 2011
    #id1,#id2,#id3 分别 var 为 id1,id2,id3,然后怎么写呢
    spark
        3
    spark  
       Apr 14, 2011
    ???
    点他们就可以了啊
    tokki
        4
    tokki  
       Apr 14, 2011
    EACH 遍历一下
    leojoy710
        5
    leojoy710  
       Apr 14, 2011
    把事件绑在父元素上...判断事件源是不是其子元素...也就是你这里的abc...是的话执行即可...

    但是如果你的abc分散在不同的父元素的话,还是老老实实一个一个绑...
    keakon
        6
    keakon  
       Apr 14, 2011
    首先要说的是,这个绑定事件的方法不是JavaScript或DOM API,而是jQuery。

    如果你的3个变量都是dom元素,就用$([a,b,c]);如果是jQuery对象,就用$([a[0],b[0],c[0]]),或者a.add(b).add(c),或者前面某人说的each(不过你还得建立一个数组)。
    westup
        7
    westup  
    OP
       Apr 15, 2011
    郁闷死,照着都试了,没用啊
    westup
        8
    westup  
    OP
       Apr 15, 2011
    @keakon 的有用的,上面各位都谢啦
    kamal
        9
    kamal  
       Apr 15, 2011
    @leojoy710 冒泡到html 嘿嘿
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5503 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 51ms · UTC 06:51 · PVG 14:51 · LAX 23:51 · JFK 02:51
    ♥ Do have faith in what you're doing.