码迷,mamicode.com
首页 > Web开发 > 详细

不能调用jquery中ready里面定义的函数?

时间:2014-07-15 23:33:40      阅读:341      评论:0      收藏:0      [点我收藏+]

标签:java   io   cti   javascript   re   c   

现象:不能调用jquery中ready里面定义的函数

源码:<script type="text/javascript">

$(document).ready(function(e) {

function test(){

alert(‘test!‘);

}

});

test(); // 报错,test()未定义

</script>

解析:ready也相当于一个函数,即新建一局部函数作用域,外面 当然不可用。和js的onload函数差不多,就比如onload="ready()"

function ready(){

function test(){

alert("test!")

}

}

你在外面肯定调用不了test()函数的

解决方法:

1、把要在外面调用的函数test()从$(document).ready 单独抽出来,供调用!

2、将要在外部调用的函数的作用域提升为全局作用域(变量申明),如下:

<script type="text/javascript">

var test;//定义一全局变量,可省略

$(document).ready(function(e) {

test=function(){

alert(‘test!‘);

}

});

test(); //现在可以在外部调用了

</script>

<a href=‘javascript:;‘ onclick=‘test();‘>点击测试,test();供标签事件调用</a>

不能调用jquery中ready里面定义的函数?,布布扣,bubuko.com

不能调用jquery中ready里面定义的函数?

标签:java   io   cti   javascript   re   c   

原文地址:http://www.cnblogs.com/ymy124/p/3841323.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!