作者TonyQ (沉默是金。)
看板Ajax
标题Re: [问题] function
时间Sat Jun 19 20:50:31 2010
※ 引述《a613204 (胖胖)》之铭言:
: 想请问一下
: 假如我有一个按钮
: <input type="button" name="b1" id="b1" value="按钮"/>
: 用jQuery的方式来设定 click事件的话 是用下面这种方式
: $('#b1').click(function(){
: .....
: });
: 假如说我要传递参数给click事件的话要怎麽做呢?? 目前只想到传统的
: <input onclick="函数名称('参数')" type="button" name="b1" id="b1" value="按钮"/>
: function 函数名称(参数)
: {
: .......//里面用jQuery的写法
: }
: 这样是否就不需要先用$(document).ready({});包含起来呢??
why?
一般来讲如果你在这时间点就知道要传参数,
那你可以直接写在event的定义里啊
为什麽你不写
$("#b1").click(function(){
函数名称('参数');
});
@_@
至於是不是需要用 ready 来做,只要你确定你的 js 会出现在该html元素之後,
包不包是无所谓的。
当然延伸作法还有放attr来取attr之类的进阶作法,像 jQuery tooltip就是,
不过,这一切都要看你的目的跟用途来作取舍。
--
我:一半的日子让你说,我听你说你的所有
______________________________________
______________________________________一半的日子我想说,对你说过去的所有:我
_______________________________________________________
在讨论中妥善扮演兼具聆听与分享的角色,是我们一生的课题。
_______________________________________________________
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.136.180.61
1F:推 a613204:那请问写在function内的程式是不是一定就不需要ready 06/19 22:16
2F:→ a613204:元素都已经载入了 06/19 22:17
3F:→ TonyQ:不一定,总之只要会用到元素都已经载入就没问题这样 06/19 22:22
4F:→ TonyQ:放ready跟放body 最底部意思差不多(还是有差...不明显) 06/19 22:22
5F:推 a613204:这样感觉有些奇怪?使用到function 元素不是应该都载入了? 06/19 23:09
6F:→ a613204:那如果没有使用jQuery 写一般的function 不就有可能有问题 06/19 23:10
7F:→ TonyQ:不一定,有时候在还没ready之前element就已经可能存在且可以 06/19 23:20
8F:→ TonyQ:被点击了。所以像你文章中的那种写法,反而是function应该要 06/19 23:21
9F:→ TonyQ:定义在element之前才保险。 06/19 23:21
10F:→ TonyQ:之所以jQuery的event binding会上在ready主要有三个原因, 06/19 23:21
11F:→ TonyQ:一个是搞不清楚流程,另一个是定义在element出现之前,最後 06/19 23:22
12F:→ TonyQ:一个则是所要做的事情有牵连到还没出现的元素。 06/19 23:22
13F:→ TonyQ:另外,function中也有可能去调用其他元素啊。:) 06/19 23:23