$(document).ready(function(){
var gTmp;
function foo1(){
gTmp = foo2();
alert(gTmp);
}
function foo2(){
return 1;
}
});function foo3(){
foo1();//要調用的是上面的foo1
}
<iframe src="test.html"></ifarme>//test.html
window.parent.foo3();[!]注意,foo1 foo2 foo3不能省略,而foo3卻可以放進ready裡面
問題是:
如此調用提示foo1未定義,放入ready foo3未定義
iframe 想調用jquery函數怎麼辦,高手支招

解决方案 »

  1.   

    iframe和父html只能2个文件都写全所有js代码,因为他们都是独立的
      

  2.   

    父主結构是个插件,里面用了jquery技术,我正是通通过iframe弹出输入框后,成功初始化插件的init函数,提不出来
      

  3.   

    来人啊
    关健字:js调用jquery;foo3运行出错;iframe 调用父jquery函数
      

  4.   

    楼主,没搞明白 js 函数的作用域$(document).ready(function(){ 
    var gTmp; 
    function foo1(){ gTmp = foo2(); alert(gTmp); }
     function foo2(){ return 1; } 
    }); 
    // foo1, foo2 在匿名函数 function 内部有效function foo3(){ foo1();//要調用的是上面的foo1 } 把3个函数都定义成全局得就可以。你的ready 函数,根本就没用(没用执行任何代码,只是定义了,一个变量,2个函数,都是局部的)
      

  5.   

    被一语点破,我可把以函数全提出来啊,把运行的留在里面,例如绑定事件,自运行等,这样就可以了,对ready理解偏了,以为jquery头了,其实是onload