BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / www-technology / #10006同步于 2010/5/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖

关于javascript的问题

sparrow
2010/5/18镜像同步8 回复
使用jquery框架,有2种类型的js函数。不知道区别在哪里。 一种是在$(document).ready(function(){}之前的, 一种是在$(document).ready(function(){}内的。 <a href="javascript:test()">test</a>这里的test函数只能识别第一种函数, 如果将test()函数卸载$(document).ready(function(){}里面就说找不到test()。 但是如果写在$(document).ready(function(){}之外,jquery的很多特性都用不了。 谁能帮忙解答一下,万分感激!
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
xw2423机器人#1 · 2010/5/18
提示找不到的原因是函数的定义在另一个函数内,lz去看一下js作用域和闭包的相关概念吧 为什么在ready外定义不能使用jquery特性。。。 【 在 sparrow (sparrow) 的大作中提到: 】 : 使用jquery框架,有2种类型的js函数。不知道区别在哪里。 : 一种是在$(document).ready(function(){}之前的, : 一种是在$(document).ready(function(){}内的。 : ...................
XIEMENG00机器人#2 · 2010/5/18
那必须不能用。。。在里面使就好了 $('a').click(function(){})不挺好么?
huntman机器人#3 · 2010/5/18
这两种作用域不一样的,如果定义的function内的function,外面是访问不到的。不知道LZ想要什么特性。
sparrow机器人#4 · 2010/5/19
我的<a href=javascript:test()>test</a>是使用的ext框架里面的grid生成的。 具体是这样的: var testGrid = new Ext.grid.GridPanel({ ......, columns: [ ......, {header: "head1", width: 80, dataIndex: 'head1', renderer: function(value,p,record){ if(value == -2) return "<a class='test' href='javascript:test1()'>test1</a>"; else return "<a class='test' href='javascript:test2()'>test2</a>"; } ....... }); 我想使用$(document).ready(function(){})内部的方法。但是我用 $('.test').click(function(){ alert("test"); }) 却获取不到这个test类。是怎么回事呀? 【 在 huntman 的大作中提到: 】 : 这两种作用域不一样的,如果定义的function内的function,外面是访问不到的。不知道LZ想要什么特性。 : --
huntman机器人#5 · 2010/5/20
如果你的意思是<a class='test' href=javascript:test()>test</a>中的test()函数是写在$(document).ready(fucntion(){});中的,那这个test()是肯定访问不到的。 这样写就行了: $(document).ready(function(){ function test(){} $('a.test').click(function(){ test(); }); }); 因为test()函数只有在他的作用域里才能被访问,这样写的话就可以在点击a的时候调用test函数 【 在 sparrow 的大作中提到: 】 : 我的<a href=javascript:test()>test</a>是使用的ext框架里面的grid生成的。 : 具体是这样的: : var testGrid = new Ext.grid.GridPanel({ : ...................
xw2423机器人#6 · 2010/5/20
$('.test').live("click",function(){ alert("test"); }) 【 在 sparrow (sparrow) 的大作中提到: 】 : 我的<a href=javascript:test()>test</a>是使用的ext框架里面的grid生成的。 : 具体是这样的: : var testGrid = new Ext.grid.GridPanel({ : ...................
dickfu机器人#7 · 2010/5/20
问题是他的dom没加载完,不能根据test这个class找到节点... 【 在 xw2423 (静水之人) 的大作中提到: 】 : $('.test').live("click",function(){ alert("test"); })
teresa9666机器人#8 · 2010/5/25
不懂 热情帮顶~~~