作者TonyQ (沉默是金)
看板Ajax
标题Re: [讨论] 函式被呼叫时的变数
时间Sat Aug 29 11:22:00 2009
※ 引述《JYHuang (夏天到了,冷不起来了说)》之铭言:
: 今天在写东西时又发现一个满特殊的情况
: function abc(str,elem){
: alert(elem)
: }
: <li onclick="abc('123',this)">...</li>
: <a href="#abc" onclick="abc('123',this)">...</a>
: <a href="#abc" onmouseover="abc('123',this)">...</a>
: 我如果在li上click,alert的会是[object HTMLLIElement]
: 我如果在a 上click, alert的会是 domain.name#abc
: 把滑鼠移到a上面的结果也跟click一样
: 在<A>这个标签上this这个属性似乎比较不同於其它element..
: 不能把element本身传过去
其实这的确也是把他本身传过去的 ,
但是 a (也就是 hyperlink) 在实做 toString 这个function 比较不同 ,
不会像li 那样显示 , 所以才会让你有这种错觉
你可以跑跑看 这个 sample page 就知道了
http://tonylovejava.googlepages.com/testThis.htm
: 因为这些element是动态产生的,会出现相同的东西出现在同一页上
: 所以用id或attribute去判别,会比较麻烦一点
: 除此之外还有什麽方法可以在function中函式主动知道
: 是由那个<A> 触发的event呼叫函式的呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 116.59.168.233
1F:推 JYHuang:原来如此... 08/30 01:26