近日初学jQuery,有一点疑问,如下:
我在一个1.js文件中加入一段绑定事件的代码
$("input.num").keyup(function(){ var tmptxt=$(this).val(); $(this).val(tmptxt.replace(/\D|^0/g,'')); }).bind("paste",function(){ var tmptxt=$(this).val(); $(this).val(tmptxt.replace(/\D|^0/g,'')); })
然后在页面引用这个1.js,发现事件绑定不成功。然后我在这个页面的jquery的ready函数中放入这段代码,就发现可以用,因为javascript是按顺序执行的,我本来以为这段代码一样只要放在
<script></script>
里面就可以有效,但看起来不是这样的?
如果没猜错的话,你大概是把js代码放在html的头部了。如你所说javascript是按顺序执行的,如果你把这段js放在input
的html之前的话,jquery选择器是无法获得这个元素的,因为这时候它后面的元素还没载入进来。
因此把代码放在document
的ready
事件里是最保险的了。因为这时所有的dom文档已经载入完毕。
任何的jquery代码都是放到$(document).ready()里面的,当然$(document).ready()的写法还有很多
楼主可以看看 http://www.chengxuyuans.com/jquery/do...